From cc8b557642e914c7e94ff6fbfe121a4472e5e5e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristina=20E=2E=20Gonz=C3=A1lez-Espinoza?= Date: Tue, 12 Dec 2023 09:14:35 +0100 Subject: [PATCH 01/49] Add web service --- .../DictionaryMapping/NeuronMorphology.hjson | 1 - kgforge/core/archetypes/dataset_store.py | 5 +- kgforge/core/archetypes/read_only_store.py | 104 +++-------- kgforge/core/archetypes/store.py | 7 +- kgforge/core/commons/parser.py | 17 ++ kgforge/core/commons/sparql_query_builder.py | 19 +- kgforge/specializations/stores/__init__.py | 2 + .../specializations/stores/sparql_store.py | 28 +-- .../stores/web_service/__init__.py | 0 .../stores/web_service/webservice.py | 102 ++++++++++ .../stores/web_service_store.py | 175 ++++++++++++++++++ .../stores/test_web_service.py | 71 +++++++ 12 files changed, 406 insertions(+), 125 deletions(-) create mode 100644 kgforge/specializations/stores/web_service/__init__.py create mode 100644 kgforge/specializations/stores/web_service/webservice.py create mode 100644 kgforge/specializations/stores/web_service_store.py create mode 100644 tests/specializations/stores/test_web_service.py diff --git a/examples/mappings/NeuroMorpho/mappings/DictionaryMapping/NeuronMorphology.hjson b/examples/mappings/NeuroMorpho/mappings/DictionaryMapping/NeuronMorphology.hjson index 6ff77840c..2d1918375 100644 --- a/examples/mappings/NeuroMorpho/mappings/DictionaryMapping/NeuronMorphology.hjson +++ b/examples/mappings/NeuroMorpho/mappings/DictionaryMapping/NeuronMorphology.hjson @@ -4,7 +4,6 @@ NeuronMorphology Entity ] - id: forge.format('identifier', 'neuronmorphologies/neuromorpho', f'{x.bbpID}') brainLocation: { type: BrainLocation brainRegion: forge.resolve(x.brain_region[0], scope='ontology', strategy='EXACT_CASE_INSENSITIVE_MATCH') diff --git a/kgforge/core/archetypes/dataset_store.py b/kgforge/core/archetypes/dataset_store.py index 4896e0f9a..931cd1237 100644 --- a/kgforge/core/archetypes/dataset_store.py +++ b/kgforge/core/archetypes/dataset_store.py @@ -77,13 +77,14 @@ def types(self) -> Optional[List[str]]: return list(self.model.mappings(self.model.source, False).keys()) def search( - self, filters: List[Union[Dict, Filter]], resolvers: Optional[List[Resolver]] = None, + self, resolvers: Optional[List[Resolver]], + filters: List[Union[Dict, Filter]], **params ) -> Optional[List[Resource]]: """Search within the database. :param map: bool """ - unmapped_resources = self._search(filters, resolvers, **params) + unmapped_resources = self._search(resolvers, filters, **params) if not params.pop('map', True): return unmapped_resources diff --git a/kgforge/core/archetypes/read_only_store.py b/kgforge/core/archetypes/read_only_store.py index a16c70f6c..1ee272eda 100644 --- a/kgforge/core/archetypes/read_only_store.py +++ b/kgforge/core/archetypes/read_only_store.py @@ -11,12 +11,13 @@ # # You should have received a copy of the GNU Lesser General Public License # along with Blue Brain Nexus Forge. If not, see . + import time from abc import ABC, abstractmethod from pathlib import Path from typing import Any, Dict, List, Optional, Tuple, Union -from kgforge.core.resource import Resource +from kgforge.core import Resource from kgforge.core.archetypes.model import Model from kgforge.core.archetypes.resolver import Resolver from kgforge.core.commons.attributes import repr_class @@ -25,9 +26,7 @@ DownloadingError, ) from kgforge.core.commons.execution import not_supported -from kgforge.core.commons.sparql_query_builder import SPARQLQueryBuilder from kgforge.core.reshaping import collect_values -from kgforge.core.wrappings import Filter from kgforge.core.wrappings.dict import DictWrapper DEFAULT_LIMIT = 100 @@ -50,42 +49,29 @@ def __init__( model: Optional[Model] = None, ) -> None: self.model: Optional[Model] = model + self.model_context: Optional[Context] = ( + self.model.context() if hasattr(self.model, 'context') else None + ) def __repr__(self) -> str: return repr_class(self) - @staticmethod - def _context_to_dict(context: Context): - return { - k: v["@id"] if isinstance(v, Dict) and "@id" in v else v - for k, v in context.document["@context"].items() - } - - def get_context_prefix_vocab(self) -> Tuple[Optional[Dict], Optional[Dict], Optional[str]]: - return ( - ReadOnlyStore._context_to_dict(self.model_context().document), - self.model_context().prefixes, - self.model_context().vocab - ) - # C[R]UD. @abstractmethod def retrieve( - self, id_: str, version: Optional[Union[int, str]], cross_bucket: bool = False, **params - ) -> Optional[Resource]: + self, id_: str, version: Optional[Union[int, str]], cross_bucket: bool, **params + ) -> Resource: # POLICY Should notify of failures with exception RetrievalError including a message. # POLICY Resource _store_metadata should be set using wrappers.dict.wrap_dict(). # POLICY Resource _synchronized should be set to True. # TODO These two operations might be abstracted here when other stores will be implemented. - ... + pass - @abstractmethod def _retrieve_filename(self, id: str) -> Tuple[str, str]: # TODO This operation might be adapted if other file metadata are needed. - ... + not_supported() - @abstractmethod def _prepare_download_one( self, url: str, @@ -93,7 +79,7 @@ def _prepare_download_one( cross_bucket: bool ) -> Tuple[str, str]: # Prepare download url and download bucket - ... + not_supported() def download( self, @@ -164,7 +150,6 @@ def _download_many( for url, path, store_m, bucket in zip(urls, paths, store_metadata, buckets): self._download_one(url, path, store_m, cross_bucket, content_type, bucket) - @abstractmethod def _download_one( self, url: str, @@ -176,13 +161,15 @@ def _download_one( ) -> None: # path: FilePath. # POLICY Should notify of failures with exception DownloadingError including a message. - ... + not_supported() # Querying. @abstractmethod def search( - self, resolvers: Optional[List[Resolver]], filters: List[Union[Dict, Filter]], **params + self, resolvers: Optional[List[Resolver]] = None, + *filters, + **params ) -> List[Resource]: # Positional arguments in 'filters' are instances of type Filter from wrappings/paths.py @@ -205,53 +192,10 @@ def search( # TODO These two operations might be abstracted here when other stores will be implemented. ... - def sparql( - self, query: str, - debug: bool, - limit: int = DEFAULT_LIMIT, - offset: int = DEFAULT_OFFSET, - **params - ) -> List[Resource]: - rewrite = params.get("rewrite", True) - - if self.model_context() is not None and rewrite: - - context_as_dict, prefixes, vocab = self.get_context_prefix_vocab() - - qr = SPARQLQueryBuilder.rewrite_sparql( - query, - context_as_dict=context_as_dict, - prefixes=prefixes, - vocab=vocab - ) - else: - qr = query - - qr = SPARQLQueryBuilder.apply_limit_and_offset_to_query( - qr, - limit=limit, - offset=offset, - default_limit=DEFAULT_LIMIT, - default_offset=DEFAULT_OFFSET - ) - - if debug: - SPARQLQueryBuilder.debug_query(qr) - - return self._sparql(qr) - - @abstractmethod - def _sparql(self, query: str) -> Optional[Union[List[Resource], Resource]]: - # POLICY Should notify of failures with exception QueryingError including a message. - # POLICY Resource _store_metadata should not be set (default is None). - # POLICY Resource _synchronized should not be set (default is False). - ... - @abstractmethod - def elastic( - self, query: str, debug: bool, limit: int = None, - offset: int = None, **params - ) -> Optional[Union[List[Resource], Resource]]: + def sparql(self, query: str, debug: bool, limit: int = DEFAULT_LIMIT, + offset: int = DEFAULT_OFFSET, + **params) -> Optional[Union[List[Resource], Resource]]: ... # Versioning. @@ -268,14 +212,18 @@ def _initialize_service( # POLICY Should initialize the access to the store according to its configuration. ... - @abstractmethod + @staticmethod + def _debug_query(query) -> None: + if isinstance(query, Dict): + print("Submitted query:", query) + else: + print(*["Submitted query:", *query.splitlines()], sep="\n ") + print() + def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: """Rewrite a given uri using the store Context :param uri: a URI to rewrite. :param context: a Store Context object :return: str """ - ... - - def model_context(self): - return self.model.context() if self.model else None + not_supported() diff --git a/kgforge/core/archetypes/store.py b/kgforge/core/archetypes/store.py index 21bf9ed73..7484c5f31 100644 --- a/kgforge/core/archetypes/store.py +++ b/kgforge/core/archetypes/store.py @@ -14,13 +14,14 @@ import json from abc import abstractmethod from pathlib import Path -from typing import Any, Dict, List, Optional, Union, Type, Match +from typing import Any, Dict, List, Optional, Union, Type from kgforge.core.archetypes.read_only_store import ReadOnlyStore, DEFAULT_LIMIT, DEFAULT_OFFSET from kgforge.core.archetypes.model import Model from kgforge.core.commons import Context from kgforge.core.resource import Resource from kgforge.core.archetypes.mapping import Mapping +from kgforge.core.archetypes.resolver import Resolver from kgforge.core.archetypes.mapper import Mapper from kgforge.core.commons.attributes import repr_class from kgforge.core.commons.es_query_builder import ESQueryBuilder @@ -32,7 +33,7 @@ UpdatingError, UploadingError ) -from kgforge.core.commons.execution import not_supported, run +from kgforge.core.commons.execution import run class Store(ReadOnlyStore): @@ -238,6 +239,8 @@ def _deprecate_one(self, resource: Resource) -> None: # POLICY Resource _store_metadata should be set using wrappers.dict.wrap_dict(). ... + # Querying + def elastic( self, query: str, debug: bool, limit: int = DEFAULT_LIMIT, offset: int = DEFAULT_OFFSET ) -> List[Resource]: diff --git a/kgforge/core/commons/parser.py b/kgforge/core/commons/parser.py index 0ab99d41c..abd69e5ae 100644 --- a/kgforge/core/commons/parser.py +++ b/kgforge/core/commons/parser.py @@ -14,6 +14,7 @@ from typing import Any import datetime +import json def _parse_type(value: Any, parse_str: bool = False): @@ -42,3 +43,19 @@ def _parse_type(value: Any, parse_str: bool = False): return _type, value except Exception: return _type, value + + +def _process_types(values): + """Assign correct data type to values from a request response""" + if values['type'] == 'literal' and 'datatype' in values and values['datatype'] == \ + 'http://www.w3.org/2001/XMLSchema#boolean': + + return json.loads(str(values["value"]).lower()) + + elif values['type'] == 'literal' and 'datatype' in values and values['datatype'] == \ + 'http://www.w3.org/2001/XMLSchema#integer': + + return int(values["value"]) + + else: + return values["value"] diff --git a/kgforge/core/commons/sparql_query_builder.py b/kgforge/core/commons/sparql_query_builder.py index b02b9f17e..e8ea684ba 100644 --- a/kgforge/core/commons/sparql_query_builder.py +++ b/kgforge/core/commons/sparql_query_builder.py @@ -28,7 +28,7 @@ from kgforge.core.archetypes.resolver import Resolver from kgforge.core.commons.context import Context from kgforge.core.commons.files import is_valid_url -from kgforge.core.commons.parser import _parse_type +from kgforge.core.commons.parser import _parse_type, _process_types from kgforge.core.commons.query_builder import QueryBuilder from kgforge.core.wrappings.paths import Filter @@ -232,23 +232,8 @@ def triples_to_resource(iri, triples): @staticmethod def build_resource_from_select_query(results: List) -> List[Resource]: - - def process_v(v): - if v['type'] == 'literal' and 'datatype' in v and v['datatype'] == \ - 'http://www.w3.org/2001/XMLSchema#boolean': - - return json.loads(str(v["value"]).lower()) - - elif v['type'] == 'literal' and 'datatype' in v and v['datatype'] == \ - 'http://www.w3.org/2001/XMLSchema#integer': - - return int(v["value"]) - - else: - return v["value"] - return [ - Resource(**{k: process_v(v) for k, v in x.items()}) + Resource(**{k: _process_types(v) for k, v in x.items()}) for x in results ] diff --git a/kgforge/specializations/stores/__init__.py b/kgforge/specializations/stores/__init__.py index ec3d912fa..0cdf37557 100644 --- a/kgforge/specializations/stores/__init__.py +++ b/kgforge/specializations/stores/__init__.py @@ -14,3 +14,5 @@ from .bluebrain_nexus import BlueBrainNexus from .demo_store import DemoStore +from .sparql_store import SPARQLStore +from .web_service_store import WebServiceStore diff --git a/kgforge/specializations/stores/sparql_store.py b/kgforge/specializations/stores/sparql_store.py index 828908fdb..df9822e65 100644 --- a/kgforge/specializations/stores/sparql_store.py +++ b/kgforge/specializations/stores/sparql_store.py @@ -51,28 +51,6 @@ def __init__(self, model: Optional[Model] = None, def mapper(self) -> Optional[Type[Mapper]]: return DictionaryMapper - def _download_one( - self, - url: str, - path: str, - store_metadata: Optional[DictWrapper], - cross_bucket: bool, - content_type: str, - bucket: str - ) -> None: - # path: FilePath. - # TODO define downloading method - # POLICY Should notify of failures with exception DownloadingError including a message. - raise not_supported() - - def retrieve( - self, id_: str, version: Optional[Union[int, str]], cross_bucket: bool = False, **params - ) -> Optional[Resource]: - raise not_supported() - - def _retrieve_filename(self, id: str) -> str: - raise not_supported() - def _search( self, filters: List[Union[Dict, Filter]], resolvers: Optional[List[Resolver]] = None, **params @@ -130,7 +108,7 @@ def _search( ) query_statements, query_filters = SPARQLQueryBuilder.build( - schema=None, resolvers=resolvers, context=self.model_context(), filters=filters + schema=None, resolvers=resolvers, context=self.model_context, filters=filters ) statements = ";\n ".join(query_statements) _filters = (".\n".join(query_filters) + '\n') if len(filters) > 0 else "" @@ -155,7 +133,7 @@ def _sparql(self, query: str) -> Optional[Union[List[Resource], Resource]]: data = response.json() - return SPARQLQueryBuilder.build_resource_from_response(query, data, self.model_context()) + return SPARQLQueryBuilder.build_resource_from_response(query, data, self.model_context) # Utils. @@ -180,7 +158,7 @@ def _initialize_service( raise ValueError(f"Store configuration error: {ve}") from ve return SPARQLService( - endpoint=endpoint, model_context=self.model_context(), + endpoint=endpoint, model_context=self.model_context, store_context=store_context, max_connection=max_connection, searchendpoints=searchendpoints, content_type=content_type, diff --git a/kgforge/specializations/stores/web_service/__init__.py b/kgforge/specializations/stores/web_service/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/kgforge/specializations/stores/web_service/webservice.py b/kgforge/specializations/stores/web_service/webservice.py new file mode 100644 index 000000000..cf1754139 --- /dev/null +++ b/kgforge/specializations/stores/web_service/webservice.py @@ -0,0 +1,102 @@ +# +# Blue Brain Nexus Forge is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Blue Brain Nexus Forge is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser +# General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Blue Brain Nexus Forge. If not, see . +import copy +import requests +from typing import Dict, Optional + +from kgforge.core.resource import Resource +from kgforge.core.commons.parser import _process_types +from kgforge.core.commons.exceptions import ConfigurationError, QueryingError + + +class WebService: + + def __init__( + self, + endpoint: str, + content_type: str, + accept: str, + response_location : Optional[str] = None, + files_download: Optional[Dict] = None, + searchendpoints : Optional[Dict] = None, + health_endpoint: Optional[str] = None, + **params, + ): + """A Web service""" + self.endpoint = endpoint + self.context_cache: Dict = dict() + self.response_location = response_location + self.files_download = files_download + self.health_endpoint = health_endpoint + self.searchendpoints = searchendpoints + if self.searchendpoints: + for endpoint in self.searchendpoints: + if not 'endpoint' in self.searchendpoints[endpoint]: + raise ConfigurationError(f"Missing endpoint searchenpoints") + self.params = copy.deepcopy(params) + + self.headers = {"Content-Type": content_type, "Accept": accept} + + self.headers_download = { + "Content-Type": self.files_download["Content-Type"] + if self.files_download and "Content-Type" in self.files_download + else "text/plain", + "Accept": self.files_download["Accept"] + if self.files_download and "Accept" in self.files_download + else "text/plain", + } + self.max_connection = params.pop('max_connection', None) + + @staticmethod + def resources_from_request(url: str, + headers: Dict, + response_location: Dict, + **request_params): + """Perform a HTTP request + + :param headers: The headers to be passed to the request + :param response_loc: The nested location of the relevat metadata in the + response. Example: NeuroMorpho uses response["_embedded"]["neuronResources"] + which should be given as: response_loc = ["_embedded", "neuronResources"] + :param request_params: Any other parameter for the request + """ + try: + response = requests.get( + url, params=request_params, headers=headers, verify=False + ) + response.raise_for_status() + except Exception as e: + raise QueryingError(e) + else: + data = response.json() + if response_location: + # Get the resources directly from a location in the response + if isinstance(response_location, str): + results = data[response_location] + elif isinstance(response_location, (list, tuple)): + for inner in response_location: + data = data[inner] + results = data + return [Resource(**result) for result in results] + else: + # Standard response format + results = data["results"]["bindings"] + return WebService.build_resources_from_results(results) + + @staticmethod + def build_resources_from_results(results): + return [ + Resource(**{k: _process_types(v) for k, v in x.items()}) + for x in results + ] \ No newline at end of file diff --git a/kgforge/specializations/stores/web_service_store.py b/kgforge/specializations/stores/web_service_store.py new file mode 100644 index 000000000..adbc1fff2 --- /dev/null +++ b/kgforge/specializations/stores/web_service_store.py @@ -0,0 +1,175 @@ +# +# Blue Brain Nexus Forge is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Blue Brain Nexus Forge is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser +# General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Blue Brain Nexus Forge. If not, see . +import copy +import asyncio +import requests +from aiohttp import ClientSession +from requests.exceptions import SSLError +from typing import Dict, List, Optional, Union, Type, Callable + +from kgforge.core.resource import Resource +from kgforge.core.archetypes.model import Model +from kgforge.core.archetypes.mapper import Mapper +from kgforge.specializations.mappers.dictionaries import DictionaryMapper +from kgforge.core.archetypes.dataset_store import DatasetStore +from kgforge.core.archetypes.resolver import Resolver +from kgforge.core.commons.exceptions import ConfigurationError, DownloadingError + + +from kgforge.core.wrappings.paths import Filter +from kgforge.specializations.stores.web_service.webservice import WebService + + +class WebServiceStore(DatasetStore): + """A high-level class to retrieve and create Datasets from a Web Service.""" + + def __init__( + self, + model: Model, + endpoint: str, + content_type: str, + accept: str, + response_location : Optional[str] = None, + files_download: Optional[Dict] = None, + searchendpoints : Optional[Dict] = None, + health_endpoint: Optional[str] = None, + **params, + ): + super().__init__(model) + self.health_endpoint = health_endpoint + self.service = self._initialize_service(endpoint, content_type, accept, + response_location, files_download, + searchendpoints, **params) + + @property + def mapper(self) -> Optional[Type[Mapper]]: + return DictionaryMapper + + def _search(self, resolvers: Optional[List[Resolver]], + filters: List[Union[Dict, Filter]], + **params + ) -> Optional[List[Resource]]: + # resolvers are not used, just passed because of previous methods shapes + if not isinstance(filters, dict): + raise NotImplementedError('Currently only the use of a dictionary as a filter is implemented') + searchendpoint = params.pop('searchendpoint', None) + if searchendpoint: + if self.service.searchendpoints is None: + raise ConfigurationError("No searchendpoints were given " + "in the initial configuration.") + try: + endpoint = self.service.searchendpoints[searchendpoint]['endpoint'] + except KeyError: + raise ConfigurationError(f"The {searchendpoint} searchpoint was not given " \ + "in the initial configuration.") + else: + endpoint = self.service.endpoint + # Combine the two dictionaries + for flr in filters: + params.update(flr) + return self.service.resources_from_request(endpoint, self.service.headers, + self.service.response_location, **params) + + + + @catch + def download(self, urls: Union[str, List[str]], + paths: Union[str, List[str]], overwrite: bool = False) -> None: + # path: DirPath. + """Download files """ + if isinstance(urls, list): + # Check consistancy between urls and paths + if not isinstance(paths, list): + raise TypeError("Given multiple urls, paths should also be a list.") + if len(paths) != len(urls): + raise ValueError(f"Missmatch between urls ({len(urls)}) and paths ({len(paths)}), \ + they should be the same amount.") + self._download_many(urls, paths) + else: + self._download_one(urls, paths) + + def _download_many(self, urls: List[str], + paths: List[str]) -> None: + async def _bulk(): + loop = asyncio.get_event_loop() + semaphore = asyncio.Semaphore(self.service.max_connection) + async with ClientSession(headers=self.service.headers_download) as session: + tasks = ( + _create_task(x, y, loop, semaphore, session) + for x, y in zip(urls, paths) + ) + return await asyncio.gather(*tasks) + + def _create_task(url, path, loop, semaphore, session): + return loop.create_task( + _download(url, path, semaphore, session) + ) + + async def _download(url, path, semaphore, session): + async with semaphore: + params_download = copy.deepcopy(self.service.params.get('download', {})) + async with session.get(url, params=params_download) as response: + try: + response.raise_for_status() + except Exception as e: + raise DownloadingError( + f"Downloading:{_error_message(e)}" + ) + else: + with open(path, "wb") as f: + data = await response.read() + f.write(data) + + return asyncio.run(_bulk()) + + def _download_one(self, url: str, path: str) -> None: + try: + params_download = copy.deepcopy(self.service.params.get('download', {})) + response = requests.get( + url=url, + headers=self.service.headers_download, + params=params_download, + verify=False + ) + response.raise_for_status() + except Exception as e: + raise DownloadingError( + f"Downloading from failed :{_error_message(e)}" + ) + else: + with open(path, "wb") as f: + for chunk in response.iter_content(chunk_size=4096): + f.write(chunk) + + def health(self) -> Callable: + if self.health_endpoint: + try: + response = requests.get(self.health_endpoint) + except SSLError: + response = requests.get(self.health_endpoint, verify=False) + return response.json() + else: + raise ConfigurationError('Health information not reachable with given configuration. \ + Define health in configuration arguments or set _health.') + + def _initialize_service(endpoint: str, + content_type: str, + accept: str, + response_location : Optional[str] = None, + files_download: Optional[Dict] = None, + searchendpoints : Optional[Dict] = None, + **params + ) -> WebService: + return WebService(endpoint, content_type, accept, response_location, + files_download, searchendpoints, **params) \ No newline at end of file diff --git a/tests/specializations/stores/test_web_service.py b/tests/specializations/stores/test_web_service.py new file mode 100644 index 000000000..b3445ad71 --- /dev/null +++ b/tests/specializations/stores/test_web_service.py @@ -0,0 +1,71 @@ +# +# Blue Brain Nexus Forge is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Blue Brain Nexus Forge is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser +# General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Blue Brain Nexus Forge. If not, see . + +import pytest + +from utils import full_path_relative_to_root +from kgforge.specializations.models.rdf_model import RdfModel +from kgforge.specializations.stores.web_service_store import WebServiceStore + +ENDPOINT = "http://neuromorpho.org/api/neuron" + + +@pytest.fixture +def rdf_model(): + model = RdfModel( + origin='directory', + source=full_path_relative_to_root("examples/mappings/NeuroMorpho"), + context={ + 'iri': full_path_relative_to_root("examples/mappings/NeuroMorpho/jsonld_context.json") + } + ) + return model + + +# model: Model, +# endpoint: str, +# content_type: str, +# accept: str, +# response_location : Optional[str] = None, +# files_download: Optional[Dict] = None, +# searchendpoints : Optional[Dict] = None, +# health_endpoint: Optional[str] = None, + +def test_config_searchendpoints(rdf_model: RdfModel): + with pytest.raises(ValueError): + WebServiceStore( + model=rdf_model, + endpoint=ENDPOINT, + content_type="application/json", + accept="*/*", + searchendpoints={"elastic": None} + ) + + +@pytest.fixture +def sparql_store(rdf_model: RdfModel): + return SPARQLStore( + model=rdf_model, + ) + + +def test_config(sparql_store: Any, rdf_model: RdfModel): + assert sparql_store.model == rdf_model + assert not sparql_store.endpoint + assert sparql_store.model.context() == rdf_model.context() + + +def test_search_params(sparql_store: Any): + with pytest.raises(ValueError): + sparql_store.search(resolvers=[None], filters=[None]) \ No newline at end of file From f6f853ecd0307538abe239dd0d36cfca8ced230b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristina=20E=2E=20Gonz=C3=A1lez-Espinoza?= Date: Wed, 13 Dec 2023 14:25:21 +0100 Subject: [PATCH 02/49] More changes --- kgforge/core/commons/execution.py | 14 +++++- .../specializations/stores/bluebrain_nexus.py | 2 +- .../specializations/stores/nexus/service.py | 13 ++--- .../stores/web_service/webservice.py | 5 +- .../stores/web_service_store.py | 49 +++++++++---------- 5 files changed, 43 insertions(+), 40 deletions(-) diff --git a/kgforge/core/commons/execution.py b/kgforge/core/commons/execution.py index 74991f4f5..d0eee24db 100644 --- a/kgforge/core/commons/execution.py +++ b/kgforge/core/commons/execution.py @@ -15,7 +15,7 @@ import inspect import traceback from functools import wraps -from typing import Any, Callable, List, Optional, Tuple, Union, Type +from typing import Any, Callable, List, Optional, Tuple, Union, Type, Dict import requests from kgforge.core.resource import Resource @@ -107,6 +107,18 @@ def catch_http_error( raise error_to_throw(error_message_formatter(e)) from e +def format_message(msg): + return "".join([msg[0].lower(), msg[1:-1], msg[-1] if msg[-1] != "." else ""]) + + +def error_message(error: Union[requests.HTTPError, Dict]) -> str: + try: + error_text = error.response.text() if isinstance(error, requests.HTTPError) else str(error) + return format_message(error_text) + except Exception: + return format_message(str(error)) + + def run(fun_one: Callable, fun_many: Optional[Callable], data: Union[Resource, List[Resource]], exception: Type[RunException], id_required: bool = False, required_synchronized: Optional[bool] = None, execute_actions: bool = False, diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index f68396d3d..b9a9b2db9 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -690,7 +690,7 @@ def search( **params ) -> List[Resource]: - if self.model_context() is None: + if self.model_context is None: raise ValueError("context model missing") debug = params.get("debug", False) diff --git a/kgforge/specializations/stores/nexus/service.py b/kgforge/specializations/stores/nexus/service.py index 76be51a00..b7e34921f 100644 --- a/kgforge/specializations/stores/nexus/service.py +++ b/kgforge/specializations/stores/nexus/service.py @@ -37,6 +37,7 @@ LazyAction, ) from kgforge.core.commons.exceptions import ConfigurationError +from kgforge.core.commons.execution import error_message, format_message from kgforge.core.commons.context import Context from kgforge.core.conversions.rdf import ( _from_jsonld_one, @@ -597,10 +598,8 @@ def to_resource( def _error_message(error: Union[HTTPError, Dict]) -> str: - def format_message(msg): - return "".join([msg[0].lower(), msg[1:-1], msg[-1] if msg[-1] != "." else ""]) - try: + # Error from Nexus error_json = error.response.json() if isinstance(error, HTTPError) else error messages = [] reason = error_json.get("reason", None) @@ -612,9 +611,5 @@ def format_message(msg): messages = messages if reason or details else [str(error)] return ". ".join(messages) except Exception: - pass - try: - error_text = error.response.text() if isinstance(error, HTTPError) else str(error) - return format_message(error_text) - except Exception: - return format_message(str(error)) + # Return general HTTPError + return error_message(error) diff --git a/kgforge/specializations/stores/web_service/webservice.py b/kgforge/specializations/stores/web_service/webservice.py index cf1754139..2f46a9e0e 100644 --- a/kgforge/specializations/stores/web_service/webservice.py +++ b/kgforge/specializations/stores/web_service/webservice.py @@ -72,9 +72,8 @@ def resources_from_request(url: str, :param request_params: Any other parameter for the request """ try: - response = requests.get( - url, params=request_params, headers=headers, verify=False - ) + response = requests.get(url, params=request_params, + headers=headers, verify=False) response.raise_for_status() except Exception as e: raise QueryingError(e) diff --git a/kgforge/specializations/stores/web_service_store.py b/kgforge/specializations/stores/web_service_store.py index adbc1fff2..5b700934d 100644 --- a/kgforge/specializations/stores/web_service_store.py +++ b/kgforge/specializations/stores/web_service_store.py @@ -25,6 +25,7 @@ from kgforge.core.archetypes.dataset_store import DatasetStore from kgforge.core.archetypes.resolver import Resolver from kgforge.core.commons.exceptions import ConfigurationError, DownloadingError +from kgforge.core.commons.execution import catch_http_error, error_message from kgforge.core.wrappings.paths import Filter @@ -120,37 +121,33 @@ async def _download(url, path, semaphore, session): async with semaphore: params_download = copy.deepcopy(self.service.params.get('download', {})) async with session.get(url, params=params_download) as response: - try: - response.raise_for_status() - except Exception as e: - raise DownloadingError( - f"Downloading:{_error_message(e)}" + catch_http_error( + response, DownloadingError, + error_message_formatter=lambda e: + f"Downloading url {url} failed: {error_message(e)}" ) - else: - with open(path, "wb") as f: - data = await response.read() - f.write(data) + with open(path, "wb") as f: + data = await response.read() + f.write(data) return asyncio.run(_bulk()) def _download_one(self, url: str, path: str) -> None: - try: - params_download = copy.deepcopy(self.service.params.get('download', {})) - response = requests.get( - url=url, - headers=self.service.headers_download, - params=params_download, - verify=False - ) - response.raise_for_status() - except Exception as e: - raise DownloadingError( - f"Downloading from failed :{_error_message(e)}" - ) - else: - with open(path, "wb") as f: - for chunk in response.iter_content(chunk_size=4096): - f.write(chunk) + params_download = copy.deepcopy(self.service.params.get('download', {})) + response = requests.get( + url=url, + headers=self.service.headers_download, + params=params_download, + verify=False + ) + catch_http_error( + response, DownloadingError, + error_message_formatter=lambda e: f"Downloading failed: " + f"{error_message(e)}" + ) + with open(path, "wb") as f: + for chunk in response.iter_content(chunk_size=4096): + f.write(chunk) def health(self) -> Callable: if self.health_endpoint: From 47e8464ac0ad92e6c9e33b946ac4e1efa77c27dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristina=20E=2E=20Gonz=C3=A1lez-Espinoza?= Date: Wed, 13 Dec 2023 17:20:18 +0100 Subject: [PATCH 03/49] Clean code and add tests --- kgforge/core/archetypes/dataset_store.py | 6 +- kgforge/core/archetypes/read_only_store.py | 105 +++++++++--- kgforge/core/archetypes/store.py | 2 +- .../specializations/stores/bluebrain_nexus.py | 3 +- kgforge/specializations/stores/demo_store.py | 4 +- .../specializations/stores/sparql_store.py | 43 +++-- .../stores/web_service/webservice.py | 46 +++--- .../stores/web_service_store.py | 154 +++++++++++------- tests/specializations/stores/test_sparql.py | 7 + .../stores/test_web_service.py | 83 +++++++--- 10 files changed, 310 insertions(+), 143 deletions(-) diff --git a/kgforge/core/archetypes/dataset_store.py b/kgforge/core/archetypes/dataset_store.py index 931cd1237..88ac44c7e 100644 --- a/kgforge/core/archetypes/dataset_store.py +++ b/kgforge/core/archetypes/dataset_store.py @@ -15,6 +15,7 @@ from abc import abstractmethod, ABC from typing import Optional, Union, List, Type, Dict +from kgforge.core.archetypes.model import Model from kgforge.core.resource import Resource from kgforge.core.archetypes.read_only_store import ReadOnlyStore from kgforge.core.archetypes.resolver import Resolver @@ -28,6 +29,9 @@ class DatasetStore(ReadOnlyStore): """A class to link to external databases, query and search directly on datasets. """ + def __init__(self, model: Optional[Model] = None) -> None: + super().__init__(model) + @property @abstractmethod def mapper(self) -> Type[Mapper]: @@ -106,7 +110,7 @@ def sparql( """Use SPARQL within the database. :param map: bool """ - unmapped_resources = super(ReadOnlyStore, self).sparql( + unmapped_resources = super().sparql( query, debug, limit, offset, **params ) diff --git a/kgforge/core/archetypes/read_only_store.py b/kgforge/core/archetypes/read_only_store.py index 1ee272eda..909c37c61 100644 --- a/kgforge/core/archetypes/read_only_store.py +++ b/kgforge/core/archetypes/read_only_store.py @@ -11,13 +11,12 @@ # # You should have received a copy of the GNU Lesser General Public License # along with Blue Brain Nexus Forge. If not, see . - import time from abc import ABC, abstractmethod from pathlib import Path from typing import Any, Dict, List, Optional, Tuple, Union -from kgforge.core import Resource +from kgforge.core.resource import Resource from kgforge.core.archetypes.model import Model from kgforge.core.archetypes.resolver import Resolver from kgforge.core.commons.attributes import repr_class @@ -26,7 +25,9 @@ DownloadingError, ) from kgforge.core.commons.execution import not_supported +from kgforge.core.commons.sparql_query_builder import SPARQLQueryBuilder from kgforge.core.reshaping import collect_values +from kgforge.core.wrappings import Filter from kgforge.core.wrappings.dict import DictWrapper DEFAULT_LIMIT = 100 @@ -49,29 +50,42 @@ def __init__( model: Optional[Model] = None, ) -> None: self.model: Optional[Model] = model - self.model_context: Optional[Context] = ( - self.model.context() if hasattr(self.model, 'context') else None - ) def __repr__(self) -> str: return repr_class(self) + @staticmethod + def _context_to_dict(context: Context): + return { + k: v["@id"] if isinstance(v, Dict) and "@id" in v else v + for k, v in context.document["@context"].items() + } + + def get_context_prefix_vocab(self) -> Tuple[Optional[Dict], Optional[Dict], Optional[str]]: + return ( + ReadOnlyStore._context_to_dict(self.model_context()), + self.model_context().prefixes, + self.model_context().vocab + ) + # C[R]UD. @abstractmethod def retrieve( - self, id_: str, version: Optional[Union[int, str]], cross_bucket: bool, **params - ) -> Resource: + self, id_: str, version: Optional[Union[int, str]], cross_bucket: bool = False, **params + ) -> Optional[Resource]: # POLICY Should notify of failures with exception RetrievalError including a message. # POLICY Resource _store_metadata should be set using wrappers.dict.wrap_dict(). # POLICY Resource _synchronized should be set to True. # TODO These two operations might be abstracted here when other stores will be implemented. - pass + ... + @abstractmethod def _retrieve_filename(self, id: str) -> Tuple[str, str]: # TODO This operation might be adapted if other file metadata are needed. - not_supported() + ... + @abstractmethod def _prepare_download_one( self, url: str, @@ -79,7 +93,7 @@ def _prepare_download_one( cross_bucket: bool ) -> Tuple[str, str]: # Prepare download url and download bucket - not_supported() + ... def download( self, @@ -150,6 +164,7 @@ def _download_many( for url, path, store_m, bucket in zip(urls, paths, store_metadata, buckets): self._download_one(url, path, store_m, cross_bucket, content_type, bucket) + @abstractmethod def _download_one( self, url: str, @@ -161,15 +176,13 @@ def _download_one( ) -> None: # path: FilePath. # POLICY Should notify of failures with exception DownloadingError including a message. - not_supported() + ... # Querying. @abstractmethod def search( - self, resolvers: Optional[List[Resolver]] = None, - *filters, - **params + self, resolvers: Optional[List[Resolver]], filters: List[Union[Dict, Filter]], **params ) -> List[Resource]: # Positional arguments in 'filters' are instances of type Filter from wrappings/paths.py @@ -192,10 +205,53 @@ def search( # TODO These two operations might be abstracted here when other stores will be implemented. ... + def sparql( + self, query: str, + debug: bool, + limit: int = DEFAULT_LIMIT, + offset: int = DEFAULT_OFFSET, + **params + ) -> List[Resource]: + rewrite = params.get("rewrite", True) + + if self.model_context() is not None and rewrite: + + context_as_dict, prefixes, vocab = self.get_context_prefix_vocab() + + qr = SPARQLQueryBuilder.rewrite_sparql( + query, + context_as_dict=context_as_dict, + prefixes=prefixes, + vocab=vocab + ) + else: + qr = query + + qr = SPARQLQueryBuilder.apply_limit_and_offset_to_query( + qr, + limit=limit, + offset=offset, + default_limit=DEFAULT_LIMIT, + default_offset=DEFAULT_OFFSET + ) + + if debug: + SPARQLQueryBuilder.debug_query(qr) + + return self._sparql(qr) + + @abstractmethod + def _sparql(self, query: str) -> Optional[Union[List[Resource], Resource]]: + # POLICY Should notify of failures with exception QueryingError including a message. + # POLICY Resource _store_metadata should not be set (default is None). + # POLICY Resource _synchronized should not be set (default is False). + ... + @abstractmethod - def sparql(self, query: str, debug: bool, limit: int = DEFAULT_LIMIT, - offset: int = DEFAULT_OFFSET, - **params) -> Optional[Union[List[Resource], Resource]]: + def elastic( + self, query: str, debug: bool, limit: int = None, + offset: int = None, **params + ) -> Optional[Union[List[Resource], Resource]]: ... # Versioning. @@ -204,7 +260,6 @@ def sparql(self, query: str, debug: bool, limit: int = DEFAULT_LIMIT, def _initialize_service( self, endpoint: Optional[str], - bucket: Optional[str], token: Optional[str], searchendpoints: Optional[Dict] = None, **store_config, @@ -212,18 +267,14 @@ def _initialize_service( # POLICY Should initialize the access to the store according to its configuration. ... - @staticmethod - def _debug_query(query) -> None: - if isinstance(query, Dict): - print("Submitted query:", query) - else: - print(*["Submitted query:", *query.splitlines()], sep="\n ") - print() - + @abstractmethod def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: """Rewrite a given uri using the store Context :param uri: a URI to rewrite. :param context: a Store Context object :return: str """ - not_supported() + ... + + def model_context(self): + return self.model.context() if self.model else None diff --git a/kgforge/core/archetypes/store.py b/kgforge/core/archetypes/store.py index 7484c5f31..ba52925d8 100644 --- a/kgforge/core/archetypes/store.py +++ b/kgforge/core/archetypes/store.py @@ -67,7 +67,7 @@ def __init__( if file_resource_mapping else None self.service: Any = self._initialize_service( - self.endpoint, self.bucket, self.token, searchendpoints, **store_config + self.endpoint, self.token, searchendpoints, **store_config ) def __repr__(self) -> str: diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index b9a9b2db9..d1bddd05d 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -690,7 +690,7 @@ def search( **params ) -> List[Resource]: - if self.model_context is None: + if self.model_context() is None: raise ValueError("context model missing") debug = params.get("debug", False) @@ -929,7 +929,6 @@ def _elastic(self, query: str) -> List[Resource]: def _initialize_service( self, endpoint: Optional[str], - bucket: Optional[str], token: Optional[str], searchendpoints: Optional[Dict] = None, **store_config, diff --git a/kgforge/specializations/stores/demo_store.py b/kgforge/specializations/stores/demo_store.py index d2a9805dc..5daad16b2 100644 --- a/kgforge/specializations/stores/demo_store.py +++ b/kgforge/specializations/stores/demo_store.py @@ -165,8 +165,8 @@ def _elastic(self, query: str) -> Optional[Union[List[Resource], Resource]]: # Utils. def _initialize_service( - self, endpoint: Optional[str], bucket: Optional[str], - token: Optional[str], searchendpoints: Optional[Dict] = None, **store_config, + self, endpoint: Optional[str], token: Optional[str], + searchendpoints: Optional[Dict] = None, **store_config, ): return StoreLibrary() diff --git a/kgforge/specializations/stores/sparql_store.py b/kgforge/specializations/stores/sparql_store.py index df9822e65..ae30de4e4 100644 --- a/kgforge/specializations/stores/sparql_store.py +++ b/kgforge/specializations/stores/sparql_store.py @@ -51,6 +51,17 @@ def __init__(self, model: Optional[Model] = None, def mapper(self) -> Optional[Type[Mapper]]: return DictionaryMapper + def _download_one( + self, + url: str, + path: str, + store_metadata: Optional[DictWrapper], + cross_bucket: bool, + content_type: str, + bucket: str + ) -> None: + raise not_supported() + def _search( self, filters: List[Union[Dict, Filter]], resolvers: Optional[List[Resolver]] = None, **params @@ -135,6 +146,26 @@ def _sparql(self, query: str) -> Optional[Union[List[Resource], Resource]]: return SPARQLQueryBuilder.build_resource_from_response(query, data, self.model_context) + def elastic( + self, query: str, debug: bool, limit: int = None, offset: int = None, **params + ) -> Optional[Union[List[Resource], Resource]]: + raise not_supported() + + def _prepare_download_one(self, url: str, store_metadata: Optional[DictWrapper], + cross_bucket: bool) -> Tuple[str, str]: + raise not_supported() + + def retrieve( + self, id: str, version: Optional[Union[int, str]], cross_bucket: bool, **params + ) -> Resource: + not_supported() + + def _retrieve_filename(self, id: str) -> str: + not_supported() + + def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: + raise not_supported() + # Utils. def _initialize_service( @@ -164,15 +195,3 @@ def _initialize_service( content_type=content_type, accept=accept, **params ) - - def elastic( - self, query: str, debug: bool, limit: int = None, offset: int = None, **params - ) -> Optional[Union[List[Resource], Resource]]: - raise not_supported() - - def _prepare_download_one(self, url: str, store_metadata: Optional[DictWrapper], - cross_bucket: bool) -> Tuple[str, str]: - raise not_supported() - - def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: - raise not_supported() diff --git a/kgforge/specializations/stores/web_service/webservice.py b/kgforge/specializations/stores/web_service/webservice.py index 2f46a9e0e..25a591c66 100644 --- a/kgforge/specializations/stores/web_service/webservice.py +++ b/kgforge/specializations/stores/web_service/webservice.py @@ -11,9 +11,9 @@ # # You should have received a copy of the GNU Lesser General Public License # along with Blue Brain Nexus Forge. If not, see . +from typing import Dict, Optional import copy import requests -from typing import Dict, Optional from kgforge.core.resource import Resource from kgforge.core.commons.parser import _process_types @@ -26,38 +26,46 @@ def __init__( self, endpoint: str, content_type: str, - accept: str, - response_location : Optional[str] = None, + accept: str = "*/*", + response_location: Optional[str] = None, files_download: Optional[Dict] = None, - searchendpoints : Optional[Dict] = None, - health_endpoint: Optional[str] = None, + searchendpoints: Optional[Dict] = None, **params, ): """A Web service""" self.endpoint = endpoint - self.context_cache: Dict = dict() + self.content_type = content_type + self.accept = accept + self.context_cache: Dict = [] self.response_location = response_location self.files_download = files_download - self.health_endpoint = health_endpoint self.searchendpoints = searchendpoints if self.searchendpoints: + if not isinstance(self.searchendpoints, dict): + raise ConfigurationError("searchendpoints must be a dict") for endpoint in self.searchendpoints: - if not 'endpoint' in self.searchendpoints[endpoint]: - raise ConfigurationError(f"Missing endpoint searchenpoints") + if not isinstance(endpoint, dict): + raise ConfigurationError("endpoint configuration must be a dict") + if 'endpoint' not in self.searchendpoints[endpoint]: + raise ConfigurationError("Missing endpoint searchenpoints") + self.max_connection = params.pop('max_connection', None) self.params = copy.deepcopy(params) self.headers = {"Content-Type": content_type, "Accept": accept} - + if files_download: + if 'Content-Type' not in files_download: + raise ConfigurationError("Files download configuration misses the `Content-Type` value") + if 'Accept' not in files_download: + raise ConfigurationError("Files download configuration misses the `Accept` value") + file_content_type = files_download['Content-Type'] + file_accept = files_download['Accept'] + else: + file_content_type = file_accept = "text/plain" self.headers_download = { - "Content-Type": self.files_download["Content-Type"] - if self.files_download and "Content-Type" in self.files_download - else "text/plain", - "Accept": self.files_download["Accept"] - if self.files_download and "Accept" in self.files_download - else "text/plain", + "Content-Type": file_content_type, + "Accept": file_accept } - self.max_connection = params.pop('max_connection', None) - + @staticmethod def resources_from_request(url: str, headers: Dict, @@ -98,4 +106,4 @@ def build_resources_from_results(results): return [ Resource(**{k: _process_types(v) for k, v in x.items()}) for x in results - ] \ No newline at end of file + ] diff --git a/kgforge/specializations/stores/web_service_store.py b/kgforge/specializations/stores/web_service_store.py index 5b700934d..94a672dfd 100644 --- a/kgforge/specializations/stores/web_service_store.py +++ b/kgforge/specializations/stores/web_service_store.py @@ -11,21 +11,24 @@ # # You should have received a copy of the GNU Lesser General Public License # along with Blue Brain Nexus Forge. If not, see . +from typing import Dict, List, Optional, Union, Type, Callable, Tuple import copy import asyncio import requests from aiohttp import ClientSession from requests.exceptions import SSLError -from typing import Dict, List, Optional, Union, Type, Callable + from kgforge.core.resource import Resource +from kgforge.core.commons.context import Context from kgforge.core.archetypes.model import Model from kgforge.core.archetypes.mapper import Mapper -from kgforge.specializations.mappers.dictionaries import DictionaryMapper -from kgforge.core.archetypes.dataset_store import DatasetStore from kgforge.core.archetypes.resolver import Resolver +from kgforge.core.wrappings.dict import DictWrapper +from kgforge.core.archetypes.dataset_store import DatasetStore +from kgforge.specializations.mappers.dictionaries import DictionaryMapper from kgforge.core.commons.exceptions import ConfigurationError, DownloadingError -from kgforge.core.commons.execution import catch_http_error, error_message +from kgforge.core.commons.execution import not_supported, catch_http_error, error_message from kgforge.core.wrappings.paths import Filter @@ -39,54 +42,26 @@ def __init__( self, model: Model, endpoint: str, - content_type: str, - accept: str, - response_location : Optional[str] = None, - files_download: Optional[Dict] = None, - searchendpoints : Optional[Dict] = None, + request_params: dict, + token: Optional[str] = None, + searchendpoints: Optional[Dict] = None, health_endpoint: Optional[str] = None, **params, ): super().__init__(model) self.health_endpoint = health_endpoint - self.service = self._initialize_service(endpoint, content_type, accept, - response_location, files_download, - searchendpoints, **params) + params.update({"request_params": request_params}) + self.service = self._initialize_service(endpoint=endpoint, + token=token, + searchendpoints=searchendpoints, + **params) @property def mapper(self) -> Optional[Type[Mapper]]: return DictionaryMapper - def _search(self, resolvers: Optional[List[Resolver]], - filters: List[Union[Dict, Filter]], - **params - ) -> Optional[List[Resource]]: - # resolvers are not used, just passed because of previous methods shapes - if not isinstance(filters, dict): - raise NotImplementedError('Currently only the use of a dictionary as a filter is implemented') - searchendpoint = params.pop('searchendpoint', None) - if searchendpoint: - if self.service.searchendpoints is None: - raise ConfigurationError("No searchendpoints were given " - "in the initial configuration.") - try: - endpoint = self.service.searchendpoints[searchendpoint]['endpoint'] - except KeyError: - raise ConfigurationError(f"The {searchendpoint} searchpoint was not given " \ - "in the initial configuration.") - else: - endpoint = self.service.endpoint - # Combine the two dictionaries - for flr in filters: - params.update(flr) - return self.service.resources_from_request(endpoint, self.service.headers, - self.service.response_location, **params) - - - - @catch - def download(self, urls: Union[str, List[str]], - paths: Union[str, List[str]], overwrite: bool = False) -> None: + def download(self, urls: Union[str, List[str]], + paths: Union[str, List[str]], overwrite: bool = False) -> None: # path: DirPath. """Download files """ if isinstance(urls, list): @@ -149,24 +124,87 @@ def _download_one(self, url: str, path: str) -> None: for chunk in response.iter_content(chunk_size=4096): f.write(chunk) - def health(self) -> Callable: + def _prepare_download_one(self, url: str, store_metadata: Optional[DictWrapper], + cross_bucket: bool) -> Tuple[str, str]: + raise not_supported() + + def retrieve( + self, id: str, version: Optional[Union[int, str]], cross_bucket: bool, **params + ) -> Resource: + raise not_supported() + + def _retrieve_filename(self, id: str) -> str: + raise not_supported() + + def _search(self, resolvers: Optional[List[Resolver]], + filters: List[Union[Dict, Filter]], + **params + ) -> Optional[List[Resource]]: + # resolvers are not used, just passed because of previous methods shapes + if not isinstance(filters, dict): + raise NotImplementedError('Currently only the use of a dictionary as a filter is implemented') + searchendpoint = params.pop('searchendpoint', None) + if searchendpoint: + if self.service.searchendpoints is None: + raise ConfigurationError("No searchendpoints were given " + "in the initial configuration.") + try: + endpoint = self.service.searchendpoints[searchendpoint]['endpoint'] + except KeyError: + raise ConfigurationError(f"The {searchendpoint} searchpoint was not given " + "in the initial configuration.") + else: + endpoint = self.service.endpoint + # Combine the two dictionaries + for flr in filters: + params.update(flr) + return self.service.resources_from_request(endpoint, self.service.headers, + self.service.response_location, **params) + + def _sparql(self, query: str) -> Optional[Union[List[Resource], Resource]]: + raise not_supported() + + def elastic( + self, query: str, debug: bool, limit: int = None, offset: int = None, **params + ) -> Optional[Union[List[Resource], Resource]]: + raise not_supported() + + def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: + raise not_supported() + + def health(self) -> Dict: if self.health_endpoint: try: response = requests.get(self.health_endpoint) - except SSLError: - response = requests.get(self.health_endpoint, verify=False) - return response.json() + except Exception as error: + if isinstance(error, SSLError): + response = requests.get(self.health_endpoint, verify=False) + catch_http_error( + response, requests.HTTPError, + error_message_formatter=lambda e: + f"Health check failed: {error_message(e)}" + ) + return response.json() + else: + raise ConfigurationError(f"Health check failed: {error_message(error)}") else: - raise ConfigurationError('Health information not reachable with given configuration. \ - Define health in configuration arguments or set _health.') - - def _initialize_service(endpoint: str, - content_type: str, - accept: str, - response_location : Optional[str] = None, - files_download: Optional[Dict] = None, - searchendpoints : Optional[Dict] = None, + raise ConfigurationError("Health information not found with given configuration. " + "Define health in configuration arguments or set _health.") + + def _initialize_service(self, endpoint: str, + token: Optional[str], + searchendpoints: Optional[Dict], **params - ) -> WebService: - return WebService(endpoint, content_type, accept, response_location, - files_download, searchendpoints, **params) \ No newline at end of file + ) -> WebService: + requests_params = params.pop("request_params") + # split the parameters before initializing the service + content_type = requests_params.get("content_type", None) + if not content_type: + raise ConfigurationError("Content type not specified in request_params: " + f"{requests_params}") + accept = requests_params.get("accept", None) + response_location = requests_params.get("response_location", None) + files_download = requests_params.get("files_download", None) + return WebService(endpoint, content_type, + accept, response_location, + files_download, searchendpoints, **params) diff --git a/tests/specializations/stores/test_sparql.py b/tests/specializations/stores/test_sparql.py index f782df8e0..da414f333 100644 --- a/tests/specializations/stores/test_sparql.py +++ b/tests/specializations/stores/test_sparql.py @@ -12,11 +12,13 @@ # You should have received a copy of the GNU Lesser General Public License # along with Blue Brain Nexus Forge. If not, see . +from typing import Any import pytest from utils import full_path_relative_to_root from kgforge.specializations.models.rdf_model import RdfModel from kgforge.specializations.stores.sparql_store import SPARQLStore +from kgforge.core.commons.exceptions import NotSupportedError SEARCH_ENDPOINT = {"sparql": {"endpoint": "http://dbpedia.org/sparql"}} @@ -58,3 +60,8 @@ def test_config(sparql_store, rdf_model): def test_search_params(sparql_store): with pytest.raises(ValueError): sparql_store.search(resolvers=[None], filters=[None]) + + +def test_elastic_not_supported(sparql_store: Any): + with pytest.raises(NotSupportedError): + sparql_store.elastic(query=None, debug=False) diff --git a/tests/specializations/stores/test_web_service.py b/tests/specializations/stores/test_web_service.py index b3445ad71..2c6aeebaf 100644 --- a/tests/specializations/stores/test_web_service.py +++ b/tests/specializations/stores/test_web_service.py @@ -12,9 +12,11 @@ # You should have received a copy of the GNU Lesser General Public License # along with Blue Brain Nexus Forge. If not, see . +from typing import Any import pytest from utils import full_path_relative_to_root +from kgforge.core.commons.exceptions import ConfigurationError, NotSupportedError from kgforge.specializations.models.rdf_model import RdfModel from kgforge.specializations.stores.web_service_store import WebServiceStore @@ -33,39 +35,78 @@ def rdf_model(): return model -# model: Model, -# endpoint: str, -# content_type: str, -# accept: str, -# response_location : Optional[str] = None, -# files_download: Optional[Dict] = None, -# searchendpoints : Optional[Dict] = None, -# health_endpoint: Optional[str] = None, - def test_config_searchendpoints(rdf_model: RdfModel): - with pytest.raises(ValueError): + with pytest.raises(ConfigurationError): WebServiceStore( model=rdf_model, endpoint=ENDPOINT, - content_type="application/json", - accept="*/*", + request_params={ + "content_type":"application/json", + "accept":"*/*"}, searchendpoints={"elastic": None} ) +def test_config_file_downloads_content_type(rdf_model: RdfModel): + with pytest.raises(ConfigurationError): + WebServiceStore( + model=rdf_model, + endpoint=ENDPOINT, + request_params={ + "content_type":"application/json", + "accept":"*/*", + "files_download": {"Accept": "application/json"}}, + ) + + +def test_config_file_downloads_accept(rdf_model: RdfModel): + with pytest.raises(ConfigurationError): + WebServiceStore( + model=rdf_model, + endpoint=ENDPOINT, + request_params={ + "content_type":"application/json", + "accept":"*/*", + "files_download": {"Content-Type": "application/json"}}, + ) + + @pytest.fixture -def sparql_store(rdf_model: RdfModel): - return SPARQLStore( +def web_service_store(rdf_model: RdfModel): + return WebServiceStore( model=rdf_model, + endpoint=ENDPOINT, + request_params={ + "content_type":"application/json", + "accept":"*/*", + "files_download": {"Content-Type": "application/json", + "Accept": "*/*"} + }, + health_endpoint="https://mynotreal.com/health" ) -def test_config(sparql_store: Any, rdf_model: RdfModel): - assert sparql_store.model == rdf_model - assert not sparql_store.endpoint - assert sparql_store.model.context() == rdf_model.context() +def test_config(web_service_store: Any, rdf_model: RdfModel): + assert web_service_store.model == rdf_model + assert web_service_store.service.endpoint + assert web_service_store.model.context() == rdf_model.context() + + +def test_health_not_valid(web_service_store): + with pytest.raises(ConfigurationError): + web_service_store.health() + + +def test_sparql_not_implemented(web_service_store: Any): + with pytest.raises(NotSupportedError): + web_service_store.sparql(query="SELECT * WHERE { ?s ?p ?o }") + + +def test_elastic_not_supported(web_service_store: Any): + with pytest.raises(NotSupportedError): + web_service_store.elastic(query=None, debug=False) -def test_search_params(sparql_store: Any): - with pytest.raises(ValueError): - sparql_store.search(resolvers=[None], filters=[None]) \ No newline at end of file +def test_retrieve_not_supported(web_service_store: Any): + with pytest.raises(NotSupportedError): + web_service_store.retrieve(id=None, version=None, cross_bucket=False) From 2ff9d7dc19a73937158bddd718ebdafd9ff07609 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristina=20E=2E=20Gonz=C3=A1lez-Espinoza?= Date: Thu, 14 Dec 2023 13:45:02 +0100 Subject: [PATCH 04/49] Added methods for forge and configuration file --- .../dataset-store/prod_nexus_datasets.yml | 98 ++ .../17 - Database-sources.ipynb | 1163 +++++++++++++++++ kgforge/core/forge.py | 118 +- 3 files changed, 1375 insertions(+), 4 deletions(-) create mode 100644 examples/configurations/dataset-store/prod_nexus_datasets.yml create mode 100644 examples/notebooks/getting-started/17 - Database-sources.ipynb diff --git a/examples/configurations/dataset-store/prod_nexus_datasets.yml b/examples/configurations/dataset-store/prod_nexus_datasets.yml new file mode 100644 index 000000000..7b9a49473 --- /dev/null +++ b/examples/configurations/dataset-store/prod_nexus_datasets.yml @@ -0,0 +1,98 @@ +Model: + name: RdfModel + origin: store + source: BlueBrainNexus + context: + iri: "https://bbp.neuroshapes.org" + bucket: "neurosciencegraph/datamodels" +Store: + name: BlueBrainNexus + endpoint: https://bbp.epfl.ch/nexus/v1 + model: + name: RdfModel + searchendpoints: + sparql: + endpoint: "https://bluebrain.github.io/nexus/vocabulary/defaultSparqlIndex" + elastic: + endpoint: "https://bbp.epfl.ch/neurosciencegraph/data/views/aggreg-es/dataset" + mapping: "https://bbp.epfl.ch/neurosciencegraph/data/views/es/dataset" + default_str_keyword_field: "keyword" + vocabulary: + metadata: + iri: "https://bluebrain.github.io/nexus/contexts/metadata.json" + local_iri: "https://bluebrainnexus.io/contexts/metadata.json" + namespace: "https://bluebrain.github.io/nexus/vocabulary/" + deprecated_property: "https://bluebrain.github.io/nexus/vocabulary/deprecated" + project_property: "https://bluebrain.github.io/nexus/vocabulary/project" + max_connection: 50 + versioned_id_template: "{x.id}?rev={x._store_metadata._rev}" + file_resource_mapping: https://raw.githubusercontent.com/BlueBrain/nexus-forge/master/examples/configurations/nexus-store/file-to-resource-mapping.hjson + +Resolvers: + ontology: + - resolver: OntologyResolver + origin: store + source: BlueBrainNexus + targets: + - identifier: terms + bucket: neurosciencegraph/datamodels + searchendpoints: + sparql: + endpoint: "https://bluebrain.github.io/nexus/vocabulary/defaultSparqlIndex" + result_resource_mapping: https://raw.githubusercontent.com/BlueBrain/nexus-forge/master/examples/configurations/nexus-resolver/term-to-resource-mapping.hjson + agent: + - resolver: AgentResolver + origin: store + source: BlueBrainNexus + targets: + - identifier: agents + bucket: bbp/agents + searchendpoints: + sparql: + endpoint: "https://bluebrain.github.io/nexus/vocabulary/defaultSparqlIndex" + result_resource_mapping: https://raw.githubusercontent.com/BlueBrain/nexus-forge/master/examples/configurations/nexus-resolver/agent-to-resource-mapping.hjson + +Formatters: + identifier: https://bbp.epfl.ch/neurosciencegraph/data/{}/{} + identifier_neuroelectro: http://neuroelectro.org/api/1/{}/{} + identifier_neurolex: http://neurolex.org/wiki/{} + +Datasets: + UniProt: + origin: store + source: SPARQLStore + searchendpoints: + sparql: + endpoint: "https://sparql.uniprot.org/sparql" + model: + name: RdfModel + origin: directory + source: /Users/cgonzale/Documents/code/nexus-forge/examples/database-sources/UniProt + context: + iri: /Users/cgonzale/Documents/code/nexus-forge/examples/database-sources/UniProt/jsonld_context.json + NeuroElectro: + origin: store + source: BlueBrainNexus + bucket: bbp/neuroelectro + model: + name: RdfModel + origin: directory + source: /Users/cgonzale/Documents/code/nexus-forge/examples/database-sources/NeuroElectro + context: + iri: /Users/cgonzale/Documents/code/nexus-forge/examples/models/neuroshapes_context.json + NeuroMorpho: + origin: web_service + source: http://neuromorpho.org/api/neuron + health: http://neuromorpho.org/api/health + files_download: + endpoint: https://neuromorpho.org/dableFiles + Accept: "*/*" + max_connection: 50 + content_type: application/json;charset=UTF-8 + accept: "*/*" + model: + name: RdfModel + origin: directory + source: /Users/cgonzale/Documents/code/nexus-forge/examples/database-sources/Neuromorpho + context: + iri: /Users/cgonzale/Documents/code/nexus-forge/examples/database-sources/Neuromorpho/jsonld_context.json \ No newline at end of file diff --git a/examples/notebooks/getting-started/17 - Database-sources.ipynb b/examples/notebooks/getting-started/17 - Database-sources.ipynb new file mode 100644 index 000000000..904376583 --- /dev/null +++ b/examples/notebooks/getting-started/17 - Database-sources.ipynb @@ -0,0 +1,1163 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Querying external database sources of interest\n", + "\n", + "* Enable users to integrate data from external databases of interest within BBP KG\n", + "* While using the Nexus Forge interface and BMO vocabulary as much as possible as\n", + "* While benefiting from out of the box (meta)data transformation to make them ready for BBP internal pipelines and applications\n", + "* Demo with Mouselight, NeuroElectro, UniProt" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "ExecuteTime": { + "end_time": "2019-09-23T18:50:20.068658Z", + "start_time": "2019-09-23T18:50:19.054054Z" + } + }, + "outputs": [], + "source": [ + "import os\n", + "import uuid\n", + "import json\n", + "\n", + "from kgforge.core import KnowledgeGraphForge\n", + "from kgforge.specializations.resources import Dataset" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "# import getpass\n", + "# TOKEN = getpass.getpass()" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "endpoint = \"https://staging.nise.bbp.epfl.ch/nexus/v1\"\n", + "BUCKET = \"bbp/atlas\"\n", + "forge = KnowledgeGraphForge(\"../../configurations/database-sources/prod-nexus-sources.yml\",\n", + " # endpoint=endpoint,\n", + " bucket=BUCKET, debug=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# List of Data sources" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Available Database sources:\n", + "UniProt\n", + "NeuroElectro\n", + "NeuroMorpho\n" + ] + } + ], + "source": [ + "forge.dataset_sources(pretty=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "sources = forge.dataset_sources()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "data = {\n", + " 'origin': 'store',\n", + " 'source': 'DemoStore',\n", + " 'model': { \n", + " 'name': 'DemoModel',\n", + " 'origin': 'directory',\n", + " 'source': \"../../../tests/data/demo-model/\" \n", + " }\n", + "}\n" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "from kgforge.specializations.databases import StoreDatabase\n", + "ds = StoreDatabase(forge, name=\"DemoDB\", **data)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "forge.add_dataset_source(ds)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Available Database sources:\n", + "UniProt\n", + "NeuroElectro\n", + "NeuroMorpho\n", + "DemoDB\n" + ] + } + ], + "source": [ + "forge.dataset_sources(pretty=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Data source metadata" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "neuroelectro = sources['NeuroElectro']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Get data mappings (hold transformations logic) per data type\n", + "\n", + "* Data mappings are used to transform results obtained from the external data sources so that they are ready for consumption by BBP tools\n", + "* Perform automatic ontology linking" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Managed mappings for the data source per entity type and mapping type:\n", + " - ElectrophysiologicalFeatureAnnotation:\n", + " * DictionaryMapping\n", + " - ParameterAnnotation:\n", + " * DictionaryMapping\n", + " - ParameterBody:\n", + " * DictionaryMapping\n", + " - ScholarlyArticle:\n", + " * DictionaryMapping\n", + " - SeriesBody:\n", + " * DictionaryMapping\n" + ] + } + ], + "source": [ + "forge.mappings(source=\"NeuroElectro\")" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Managed mappings for the data source per entity type and mapping type:\n", + " - Gene:\n", + " * DictionaryMapping\n", + " - Protein:\n", + " * DictionaryMapping\n" + ] + } + ], + "source": [ + "forge.mappings('UniProt')" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "from kgforge.specializations.mappings import DictionaryMapping\n", + "mapping = forge.mapping(entity=\"ScholarlyArticle\", source=\"NeuroElectro\")" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " id: forge.format(\"identifier\", \"scholarlyarticles\", x.id)\n", + " type:\n", + " [\n", + " Entity\n", + " ScholarlyArticle\n", + " ]\n", + " abstract: x.abstract\n", + " author: x.authors_shaped\n", + " datePublished: x.date_issued\n", + " identifier: x.identifiers\n", + " isPartOf:\n", + " {\n", + " type: Periodical\n", + " issn: x.issn\n", + " name: x.journal\n", + " publisher: x.publisher\n", + " }\n", + " name: f\"article_{x.id}\"\n", + " sameAs: x.full_text_link\n", + " title: x.title\n", + " url: x.full_text_link\n", + "}\n" + ] + } + ], + "source": [ + "print(mapping)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Available Database sources:\n", + "UniProt\n" + ] + } + ], + "source": [ + "forge.dataset_sources(type_='Gene', pretty=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Search and Access data from data source\n", + "\n", + "* Mapping are automatically applied to search results\n", + "* takes a mn for now => working on making it faster " + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Submitted query:\n", + " PREFIX bmc: \n", + " PREFIX bmo: \n", + " PREFIX commonshapes: \n", + " PREFIX datashapes: \n", + " PREFIX dc: \n", + " PREFIX dcat: \n", + " PREFIX dcterms: \n", + " PREFIX mba: \n", + " PREFIX nsg: \n", + " PREFIX nxv: \n", + " PREFIX oa: \n", + " PREFIX obo: \n", + " PREFIX owl: \n", + " PREFIX prov: \n", + " PREFIX rdf: \n", + " PREFIX rdfs: \n", + " PREFIX schema: \n", + " PREFIX sh: \n", + " PREFIX shsh: \n", + " PREFIX skos: \n", + " PREFIX vann: \n", + " PREFIX void: \n", + " PREFIX xml: \n", + " PREFIX xsd: \n", + " PREFIX : \n", + " SELECT ?id ?_constrainedBy ?_createdAt ?_createdBy ?_deprecated ?_incoming ?_outgoing ?_project ?_rev ?_schemaProject ?_self ?_updatedAt ?_updatedBy WHERE { Graph ?g {?id rdf:type schema:ScholarlyArticle;\n", + " ?_constrainedBy;\n", + " ?_createdAt;\n", + " ?_createdBy;\n", + " ?_deprecated;\n", + " ?_incoming;\n", + " ?_outgoing;\n", + " ?_project;\n", + " ?_rev;\n", + " ?_schemaProject;\n", + " ?_self;\n", + " ?_updatedAt;\n", + " ?_updatedBy . \n", + " Filter (?_deprecated = 'false'^^xsd:boolean)\n", + " Filter (?_project = )}} LIMIT 2\n", + "\n" + ] + } + ], + "source": [ + "filters = {\"type\":\"ScholarlyArticle\"}\n", + "#map=True, use_cache=True, # download=True\n", + "resources = forge.search(filters, dataset_source=\"NeuroElectro\", limit=2, debug=True) \n", + "# Add function for checking datsource health => reqsuire health url from db\n" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "2" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(resources)" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " context: https://bbp.neuroshapes.org\n", + " id: https://bbp.epfl.ch/neurosciencegraph/data/scholarlyarticles/35177\n", + " type:\n", + " [\n", + " Entity\n", + " ScholarlyArticle\n", + " ]\n", + " abstract: On the one hand, neuronal activity can cause changes in pH; on the other hand, changes in pH can modulate neuronal activity. Consequently, the pH of the brain is regulated at various levels. Here we show that steady-state pH and acid extrusion were diminished in cultured hippocampal neurons of mice with a targeted disruption of the Na(+)-driven Cl(-)/HCO(3)(-) exchanger Slc4a8. Because Slc4a8 was found to predominantly localize to presynaptic nerve endings, we hypothesize that Slc4a8 is a key regulator of presynaptic pH. Supporting this hypothesis, spontaneous glutamate release in the CA1 pyramidal layer was reduced but could be rescued by increasing the intracellular pH. The reduced excitability in vitro correlated with an increased seizure threshold in vivo. Together with the altered kinetics of stimulated synaptic vesicle release, these data suggest that Slc4a8 modulates glutamate release in a pH-dependent manner.\n", + " author:\n", + " [\n", + " {\n", + " type: Person\n", + " familyName: Sinning\n", + " givenName: Anne\n", + " }\n", + " {\n", + " type: Person\n", + " familyName: Liebmann\n", + " givenName: Lutz\n", + " }\n", + " {\n", + " type: Person\n", + " familyName: Kougioumtzes\n", + " givenName: Alexandra\n", + " }\n", + " {\n", + " type: Person\n", + " familyName: Westermann\n", + " givenName: Martin\n", + " }\n", + " {\n", + " type: Person\n", + " familyName: Bruehl\n", + " givenName: Claus\n", + " }\n", + " {\n", + " type: Person\n", + " familyName: Hübner\n", + " givenName: Christian A\n", + " }\n", + " ]\n", + " datePublished: 2011-5-18\n", + " identifier:\n", + " [\n", + " {\n", + " propertyID: PMID\n", + " value: 21593314\n", + " }\n", + " {\n", + " propertyID: doi\n", + " value: 10.1523/JNEUROSCI.0269-11.2011\n", + " }\n", + " ]\n", + " isPartOf:\n", + " {\n", + " type: Periodical\n", + " issn: 0270-6474\n", + " name: The Journal of neuroscience : the official journal of the Society for Neuroscience\n", + " publisher: Society for Neuroscience\n", + " }\n", + " name: article_35177\n", + " sameAs: http://www.jneurosci.org/content/31/20/7300.long\n", + " title: Synaptic glutamate release is modulated by the Na+ -driven Cl-/HCO₃⁻ exchanger Slc4a8.\n", + " url: http://www.jneurosci.org/content/31/20/7300.long\n", + "}\n" + ] + } + ], + "source": [ + "print(resources[0])" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "uquery = \"\"\"\n", + "PREFIX up: \n", + "SELECT ?protein\n", + "WHERE {\n", + " ?protein a up:Protein ;\n", + " up:reviewed true.\n", + "}\n", + "\"\"\"" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Submitted query:\n", + " \n", + " PREFIX up: \n", + " SELECT ?protein\n", + " WHERE {\n", + " ?protein a up:Protein ;\n", + " up:reviewed true.\n", + " }\n", + " LIMIT 10\n", + "\n" + ] + } + ], + "source": [ + "uresources = forge.sparql(query=uquery, dataset_source='UniProt', limit=10, debug=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "10" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(uresources)" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Resource(_last_action=None, _validated=False, _synchronized=False, _store_metadata=None, _inner_sync=False, protein='http://purl.uniprot.org/uniprot/A0B137')" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "uresources[0]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Use Filters to search" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [], + "source": [ + "from kgforge.core.wrappings.paths import Filter, FilterOperator" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Submitted query:\n", + " PREFIX up: \n", + " PREFIX owl: \n", + " PREFIX owl2xml: \n", + " PREFIX swrlb: \n", + " PREFIX protege: \n", + " PREFIX swrl: \n", + " PREFIX xsd: \n", + " PREFIX skos: \n", + " PREFIX rdfs: \n", + " PREFIX dc11: \n", + " PREFIX rdf: \n", + " PREFIX foaf: \n", + " SELECT ?id WHERE {?id rdf:type up:Protein;\n", + " up:reviewed ?v1 . \n", + " FILTER(?v1 = 'true'^^xsd:boolean)\n", + " } LIMIT 10\n", + "\n" + ] + } + ], + "source": [ + "\n", + "proteins = forge.search({'type': 'Protein', 'up:reviewed': True}, dataset_source='UniProt', limit=10, debug=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Resource(_last_action=None, _validated=False, _synchronized=False, _store_metadata=None, id='http://purl.uniprot.org/uniprot/A0B137', _inner_sync=False)" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "proteins[0]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Map resources" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [], + "source": [ + "uniprot = sources['UniProt']" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [], + "source": [ + "complete_query = \"\"\"\n", + "PREFIX up: \n", + "SELECT ?id ?gene ?label ?subject ?gene_label\n", + "WHERE {\n", + " ?id a up:Protein ;\n", + " up:reviewed true ;\n", + " up:encodedBy ?gene ;\n", + " up:recommendedName / up:fullName ?label ;\n", + " up:organism / up:scientificName ?subject .\n", + " ?gene skos:prefLabel ?gene_label . \n", + "}\n", + "\"\"\"" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [], + "source": [ + "raw_proteins = uniprot.sparql(complete_query)" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [], + "source": [ + "new_resource = uniprot.map(raw_proteins[0], 'Protein')" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[\n", + " {\n", + " \"@context\": \"https://bbp.neuroshapes.org\",\n", + " \"@id\": \"https://bbp.epfl.ch/neurosciencegraph/data/proteins/P0DJN9\",\n", + " \"@type\": [\n", + " \"Entity\",\n", + " \"Protein\"\n", + " ],\n", + " \"encodedBy\": {\n", + " \"@id\": \"http://purl.uniprot.org/uniprot/P0DJN9#gene-MD5A00DD99270221B359AB0AE338E423668\",\n", + " \"label\": \"acsF\"\n", + " },\n", + " \"identifier\": {\n", + " \"propertyID\": \"UniProtKB\",\n", + " \"value\": \"P0DJN9\"\n", + " },\n", + " \"name\": \"Protein P0DJN9 from UniProtKB\",\n", + " \"label\": \"Aerobic magnesium-protoporphyrin IX monomethyl ester [oxidative] cyclase\",\n", + " \"subject\": {\n", + " \"label\": \"Rubrivivax gelatinosus\"\n", + " }\n", + " }\n", + "]\n" + ] + } + ], + "source": [ + "\n", + "print(json.dumps(forge.as_jsonld(new_resource), indent=4))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### same result could be obtain from a dictionary and a DictionaryMapping instance" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[\n", + " {\n", + " \"@context\": \"https://bbp.neuroshapes.org\",\n", + " \"@id\": \"https://bbp.epfl.ch/neurosciencegraph/data/proteins/P0DJN9\",\n", + " \"@type\": [\n", + " \"Entity\",\n", + " \"Protein\"\n", + " ],\n", + " \"encodedBy\": {\n", + " \"@id\": \"http://purl.uniprot.org/uniprot/P0DJN9#gene-MD5A00DD99270221B359AB0AE338E423668\",\n", + " \"label\": \"acsF\"\n", + " },\n", + " \"identifier\": {\n", + " \"propertyID\": \"UniProtKB\",\n", + " \"value\": \"P0DJN9\"\n", + " },\n", + " \"name\": \"Protein P0DJN9 from UniProtKB\",\n", + " \"label\": \"Aerobic magnesium-protoporphyrin IX monomethyl ester [oxidative] cyclase\",\n", + " \"subject\": {\n", + " \"label\": \"Rubrivivax gelatinosus\"\n", + " }\n", + " }\n", + "]\n" + ] + } + ], + "source": [ + "dict_resource = forge.as_json(raw_proteins[0])\n", + "mapping = DictionaryMapping.load(\"../../database-sources/UniProt/mappings/DictionaryMapping/Protein.hjson\")\n", + "print(json.dumps(forge.as_jsonld(uniprot.map(dict_resource, mapping)), indent=4))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Query the NeuroMorpho WebService" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [], + "source": [ + "neuromorpho = sources['NeuroMorpho']" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": {}, + "outputs": [], + "source": [ + "nmo_filters = {\"species\": \"rat,mouse,human\", \"response_loc\": [\"_embedded\", \"neuronResources\"]}" + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/miniconda3/envs/kgforge/lib/python3.7/site-packages/urllib3/connectionpool.py:1052: InsecureRequestWarning: Unverified HTTPS request is being made to host 'neuromorpho.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/1.26.x/advanced-usage.html#ssl-warnings\n", + " InsecureRequestWarning,\n" + ] + } + ], + "source": [ + "nmo_resources = forge.search(nmo_filters, dataset_source='NeuroMorpho', size=3, searchendpoint='select_query', q=\"species:mouse\")" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Resource(_last_action=None, _validated=False, _synchronized=False, _store_metadata=None, id='http://purl.obolibrary.org/obo/UBERON_0002301', type='Class', label='Neocortical Layer', _inner_sync=False, prefLabel='Neocortical Layer', subClassOf='bmo:BrainLayer')" + ] + }, + "execution_count": 50, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "forge.resolve(nmo_resources[0].brain_region[0], scope='ontology', strategy='BEST_MATCH')" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['neocortex', 'occipital', 'layer 6']" + ] + }, + "execution_count": 51, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "nmo_resources[0].brain_region" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Format date" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": {}, + "outputs": [], + "source": [ + "from datetime import datetime" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": {}, + "outputs": [], + "source": [ + "for resource in nmo_resources:\n", + " resource.bbpID = str(uuid.uuid4())\n", + " date_ints = [int(p) for p in resource.deposition_date.split('-')]\n", + " date_str = datetime(*date_ints)\n", + " resource.date_formatted = date_str.strftime(\"%Y-%m-%dT%H:%M:%S\")" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": {}, + "outputs": [], + "source": [ + "new_morphologies = neuromorpho.map(nmo_resources, 'NeuronMorphology')" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": {}, + "outputs": [], + "source": [ + "format_file = neuromorpho.service.files_download['endpoint'] + \"/{}/CNG version/{}.CNG.swc\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Attach file as distribution with morphologies" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": {}, + "outputs": [], + "source": [ + "import morphio" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/miniconda3/envs/kgforge/lib/python3.7/site-packages/urllib3/connectionpool.py:1052: InsecureRequestWarning: Unverified HTTPS request is being made to host 'neuromorpho.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/1.26.x/advanced-usage.html#ssl-warnings\n", + " InsecureRequestWarning,\n", + "/opt/miniconda3/envs/kgforge/lib/python3.7/site-packages/urllib3/connectionpool.py:1052: InsecureRequestWarning: Unverified HTTPS request is being made to host 'neuromorpho.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/1.26.x/advanced-usage.html#ssl-warnings\n", + " InsecureRequestWarning,\n", + "/opt/miniconda3/envs/kgforge/lib/python3.7/site-packages/urllib3/connectionpool.py:1052: InsecureRequestWarning: Unverified HTTPS request is being made to host 'neuromorpho.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/1.26.x/advanced-usage.html#ssl-warnings\n", + " InsecureRequestWarning,\n" + ] + } + ], + "source": [ + "for morphology in new_morphologies:\n", + " url = format_file.format(morphology.archive.lower(), morphology.name)\n", + " base_name = ''.join(url.split('.')[:-2])\n", + " file_path = f\"./downloaded/{base_name.split('/')[-1]}\"\n", + " swc = file_path + '.swc'\n", + " neuromorpho.download(url, swc)\n", + " neuromorpho.attach_file(morphology, swc, content_type='application/swc')\n", + " # Generate other morphology files\n", + " m = morphio.mut.Morphology(swc)\n", + " for extension in ['h5', 'asc']:\n", + " path = f\"{file_path}.{extension}\"\n", + " m.write(path)\n", + " neuromorpho.attach_file(morphology, path, content_type=f'application/{extension}')\n", + " m.write(file_path+'.asc')" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _register_one\n", + " False\n", + " RegistrationError: 400 Client Error: Bad Request for url: https://bbp.epfl.ch/nexus/v1/resources/bbp/atlas/datashapes%3Aneuronmorphology\n" + ] + } + ], + "source": [ + "forge.register(new_morphologies[0], schema_id=\"datashapes:neuronmorphology\")" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": {}, + "outputs": [], + "source": [ + "# forge.validate(new_morphologies[0], type_=\"NeuronMorphology\")" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " id: https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/neuromorpho/0b869f02-85b3-4c49-9cb3-5d6f12bbde28\n", + " type:\n", + " [\n", + " Dataset\n", + " NeuronMorphology\n", + " ]\n", + " archive: Scanziani\n", + " brainLocation:\n", + " {\n", + " type: BrainLocation\n", + " }\n", + " contribution:\n", + " {\n", + " type: Contribution\n", + " agent:\n", + " {\n", + " id: https://ror.org/02jqj7156\n", + " type: Organization\n", + " label: George Mason University\n", + " }\n", + " }\n", + " dateCreated:\n", + " {\n", + " type: xsd:dateTime\n", + " @value: 2012-07-01T00:00:00\n", + " }\n", + " description: Morphology of TypeA-10 obtained from NeuroMorpho API.\n", + " distribution:\n", + " [\n", + " {\n", + " type: DataDownload\n", + " atLocation:\n", + " {\n", + " type: Location\n", + " location: file:///gpfs/bbp.cscs.ch/data/project/proj39/nexus/bbp/atlas/0/4/8/5/1/9/5/c/TypeA-10.swc\n", + " store:\n", + " {\n", + " id: https://bbp.epfl.ch/neurosciencegraph/data/2f120131-0bbc-4a7e-b84b-52f7f00eec9e\n", + " type: RemoteDiskStorage\n", + " _rev: 1\n", + " }\n", + " }\n", + " contentSize:\n", + " {\n", + " unitCode: bytes\n", + " value: 80865\n", + " }\n", + " contentUrl: https://bbp.epfl.ch/nexus/v1/files/bbp/atlas/85d5c8d9-788d-4777-b62f-825b2ff12a51\n", + " digest:\n", + " {\n", + " algorithm: SHA-256\n", + " value: d0e898900e129fe41173eb0fe36bd84bd87a2100acb303e0ee96bf584eccfae0\n", + " }\n", + " encodingFormat: application/swc\n", + " name: TypeA-10.swc\n", + " }\n", + " {\n", + " type: DataDownload\n", + " atLocation:\n", + " {\n", + " type: Location\n", + " location: file:///gpfs/bbp.cscs.ch/data/project/proj39/nexus/bbp/atlas/c/f/7/d/4/6/8/7/TypeA-10.h5\n", + " store:\n", + " {\n", + " id: https://bbp.epfl.ch/neurosciencegraph/data/2f120131-0bbc-4a7e-b84b-52f7f00eec9e\n", + " type: RemoteDiskStorage\n", + " _rev: 1\n", + " }\n", + " }\n", + " contentSize:\n", + " {\n", + " unitCode: bytes\n", + " value: 45952\n", + " }\n", + " contentUrl: https://bbp.epfl.ch/nexus/v1/files/bbp/atlas/03edd654-0c39-4069-9b24-c7e3d68cd3ad\n", + " digest:\n", + " {\n", + " algorithm: SHA-256\n", + " value: 6cd5a3786e5502ce9443616089924ca8d22718a765d8e8202a5619f34b4afc9e\n", + " }\n", + " encodingFormat: application/h5\n", + " name: TypeA-10.h5\n", + " }\n", + " {\n", + " type: DataDownload\n", + " atLocation:\n", + " {\n", + " type: Location\n", + " location: file:///gpfs/bbp.cscs.ch/data/project/proj39/nexus/bbp/atlas/a/0/4/e/6/9/d/9/TypeA-10.asc\n", + " store:\n", + " {\n", + " id: https://bbp.epfl.ch/neurosciencegraph/data/2f120131-0bbc-4a7e-b84b-52f7f00eec9e\n", + " type: RemoteDiskStorage\n", + " _rev: 1\n", + " }\n", + " }\n", + " contentSize:\n", + " {\n", + " unitCode: bytes\n", + " value: 147432\n", + " }\n", + " contentUrl: https://bbp.epfl.ch/nexus/v1/files/bbp/atlas/00a51e52-b9f5-47e6-b61f-c640820d01bf\n", + " digest:\n", + " {\n", + " algorithm: SHA-256\n", + " value: a2469aceb35eb4569f9b2826ff099fb362f25bd5501ba468b269e8d1a1a3d93c\n", + " }\n", + " encodingFormat: application/asc\n", + " name: TypeA-10.asc\n", + " }\n", + " ]\n", + " generation:\n", + " {\n", + " type: Generation\n", + " activity:\n", + " {\n", + " type: nsg:NeuronMorphologyReconstruction\n", + " }\n", + " }\n", + " identifier:\n", + " {\n", + " propertyID: NeuroMorhoID\n", + " value: 10047\n", + " }\n", + " license:\n", + " {\n", + " id: https://neuromorpho.org\n", + " type: License\n", + " }\n", + " name: TypeA-10\n", + " objectOfStudy:\n", + " {\n", + " id: http://bbp.epfl.ch/neurosciencegraph/taxonomies/objectsofstudy/singlecells\n", + " type: ObjectOfStudy\n", + " label: Single Cell\n", + " }\n", + " stain: biocytin\n", + " subject:\n", + " {\n", + " type: Subject\n", + " species:\n", + " {\n", + " id: http://purl.obolibrary.org/obo/NCBITaxon_10088\n", + " type: Class\n", + " label: Mouse\n", + " subClassOf: obo:NCBITaxon_9989\n", + " }\n", + " }\n", + " version: 8.4.7\n", + "}\n" + ] + } + ], + "source": [ + "print(new_morphologies[0])" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3.7.13 ('kgforge')", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.13" + }, + "vscode": { + "interpreter": { + "hash": "9ac393a5ddd595f2c78ea58b15bf8d269850a4413729cbea5c5fae9013762763" + } + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/kgforge/core/forge.py b/kgforge/core/forge.py index 747fa98ae..52c24979f 100644 --- a/kgforge/core/forge.py +++ b/kgforge/core/forge.py @@ -24,6 +24,7 @@ from kgforge.core.archetypes.mapping import Mapping from kgforge.core.archetypes.model import Model from kgforge.core.archetypes.resolver import Resolver +from kgforge.core.archetypes.dataset_store import DatasetStore from kgforge.core.archetypes.mapper import Mapper from kgforge.core.archetypes.store import Store from kgforge.core.commons.files import load_file_as_byte @@ -185,6 +186,13 @@ def __init__(self, configuration: Union[str, Dict], **kwargs) -> None: "": , ..., }, + "Datasets":{ + "": { + "origin" : , + "source": + ..., + } + } } In the configuration, Class name could be provided in three formats: @@ -256,6 +264,10 @@ def __init__(self, configuration: Union[str, Dict], **kwargs) -> None: # Formatters. self._formatters: Optional[Dict[str, str]] = config.pop("Formatters", None) + # Datasets + dataset_config = config.pop("Datasets", None) + self._dataset_sources: Optional[Dict[str, DatasetStore]] = self.create_datasets(dataset_config, store_config) + @catch def prefixes(self, pretty: bool = True) -> Optional[Dict[str, str]]: """ @@ -543,7 +555,11 @@ def mappings( :param pretty: a boolean :return: Optional[Dict[str, List[str]]] """ - return self._model.mappings(source, pretty) + if source in self._dataset_sources: + ds = self._dataset_sources[source] + return ds._model.mappings(ds._model.source, pretty) + else: + return self._model.mappings(source, pretty) @catch def mapping( @@ -559,7 +575,11 @@ def mapping( """ if type is None: type = self._store.mapping - return self._model.mapping(entity, source, type) + if source in self._dataset_sources: + ds = self._dataset_sources[source] + return ds._model.mapping(entity, ds._model.source, type) + else: + return self._model.mapping(entity, source, type) @catch def map( @@ -649,7 +669,13 @@ def search(self, *filters: Union[Dict, Filter], **params) -> List[Resource]: resolvers = ( list(self._resolvers.values()) if self._resolvers is not None else None ) - return self._store.search(resolvers=resolvers, filters=list(filters), **params) + dataset = params.pop('source', None) + if dataset: + if dataset in self._dataset_sources: + return self._dataset_sources[dataset].search(resolvers, *filters, **params) + else: + raise AttributeError('Selected database was not declared within forge.') + return self._store.search(resolvers, *filters, **params) @catch def sparql( @@ -670,6 +696,12 @@ def sparql( :param params: a dictionary of parameters. Supported params are: rewrite (whether to rewrite the sparql query or run it as is) :return: List[Resource] """ + dataset = params.pop('source', None) + if dataset: + if dataset in self._dataset_sources: + return self._dataset_sources[dataset].sparql(query, debug, limit, offset, **params) + else: + raise AttributeError('Selected database was not declared within forge.') return self._store.sparql(query, debug, limit, offset, **params) @catch @@ -679,6 +711,7 @@ def elastic( debug: bool = False, limit: Optional[int] = None, offset: Optional[int] = None, + source: Optional[str] = None, ) -> List[Resource]: """ Search for resources using an ElasticSearch DSL query. See ElasticSearch DSL docs: https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl.html. @@ -689,6 +722,11 @@ def elastic( :param offset: how many results to skip from the first one :return: List[Resource] """ + if source: + if source in self._dataset_sources: + return self._dataset_sources[source].elastic(query, debug, limit, offset) + else: + raise AttributeError('Selected database was not declared within forge.') return self._store.elastic(query, debug, limit, offset) @catch @@ -699,7 +737,8 @@ def download( path: str = ".", overwrite: bool = False, cross_bucket: bool = False, - content_type: str = None + content_type: str = None, + source: Optional[str] = None ) -> None: """ Download files attached to a resource or a list of resources. @@ -712,6 +751,13 @@ def download( :param content_type: the content_type of the files to download """ # path: DirPath. + if source: + if source in self._dataset_sources: + return self._dataset_sources[source].download(data, follow, path, + overwrite, cross_bucket, + content_type) + else: + raise AttributeError('Selected database was not declared within forge.') self._store.download(data, follow, path, overwrite, cross_bucket, content_type) # Storing User Interface. @@ -957,6 +1003,70 @@ def get_model_context(self): """Expose the context used in the model.""" return self._model.context() + @catch + def dataset_sources(self, type_: Optional[List[str]] = None, + pretty: bool = False) -> Optional[List[str]]: + """ + Print(pretty=True) or return (pretty=False) configured data sources. + :param pretty: a boolean + :return: Optional[List[str]] + """ + if type_ is None: + sources = self._dataset_sources + else: + sources = {} + if isinstance(type_, list): + for type in type_: + for ds, types in self._dataset_sources.items(): + try: + if type in types: + sources[ds] = types + except ValueError: + # skiping db without mappings + continue + else: + for ds, dstypes in self._dataset_sources.items(): + try: + types = dstypes.types() + if type_ in types: + sources[ds] = dstypes + except ValueError: + # skiping db without mappings + continue + if not sources: + print("No Database sources were found for the given type(s)") + if pretty: + print(*["Available Database sources:", *sources], sep="\n") + else: + return sources + + def add_dataset_source(self, dataset: DatasetStore) -> None: + """ + Add a DatabaseSource to the KG. + """ + self._dataset_sources[dataset.name] = dataset + + def create_datasets(self, all_config: Optional[Dict[str, Dict[str, str]]], + store_config : Optional[Dict[str, Dict[str, str]]], + ) -> Dict[str, DatasetStore]: + ds = {} + for name, config in all_config.items(): + origin = config['origin'] + source = config['source'] + # Reuse complete configuration of the store when Nexus is called + if source == store_config['name'] == 'BlueBrainNexus': + store_copy = deepcopy(store_config) + with_defaults(config, store_copy, + "source", "name", + list(store_copy.keys())) + else: + try: + dataset = import_class(name, "stores") + ds[name]: DatasetStore = dataset(**config) + except Exception: + raise NotImplementedError(f'Dataset from {origin} is not yet implemented.') + return ds + def prepare_resolvers( config: Dict, store_config: Dict From 380eb07c1402a7165d3cf0bc41e7885543c9b5ca Mon Sep 17 00:00:00 2001 From: Sarah Date: Wed, 10 Jan 2024 17:48:42 +0100 Subject: [PATCH 05/49] Load local configuration when configuration tests (#370) * load local configuration when configuration tests * keep commons imports together * fix duplicate keyword argument issue * use context path from default config in test_to_resource test * rm extra store_config.pop * refactor store config --- kgforge/core/commons/files.py | 7 ++++ kgforge/core/forge.py | 7 +--- .../stores/test_bluebrain_nexus.py | 38 +++++++++++++------ 3 files changed, 36 insertions(+), 16 deletions(-) diff --git a/kgforge/core/commons/files.py b/kgforge/core/commons/files.py index fd38f3490..15a24fede 100644 --- a/kgforge/core/commons/files.py +++ b/kgforge/core/commons/files.py @@ -15,9 +15,16 @@ from urllib.parse import urlparse from pathlib import Path import requests +import yaml from requests import RequestException +def load_yaml_from_file(filepath: str): + config_data = load_file_as_byte(filepath) + config_data = config_data.decode("utf-8") + return yaml.safe_load(config_data) + + def load_file_as_byte(source: str): # source: Union[str, Path, URL]. filepath = Path(source) diff --git a/kgforge/core/forge.py b/kgforge/core/forge.py index 52c24979f..41f352a5b 100644 --- a/kgforge/core/forge.py +++ b/kgforge/core/forge.py @@ -16,7 +16,6 @@ from typing import Any, Callable, Dict, List, Optional, Tuple, Union, Type import numpy as np -import yaml from pandas import DataFrame from rdflib import Graph @@ -27,7 +26,7 @@ from kgforge.core.archetypes.dataset_store import DatasetStore from kgforge.core.archetypes.mapper import Mapper from kgforge.core.archetypes.store import Store -from kgforge.core.commons.files import load_file_as_byte +from kgforge.core.commons.files import load_yaml_from_file from kgforge.core.commons.actions import LazyAction from kgforge.core.commons.dictionaries import with_defaults from kgforge.core.commons.exceptions import ResolvingError @@ -207,9 +206,7 @@ def __init__(self, configuration: Union[str, Dict], **kwargs) -> None: """ if isinstance(configuration, str): - config_data = load_file_as_byte(configuration) - config_data = config_data.decode("utf-8") - config = yaml.safe_load(config_data) + config = load_yaml_from_file(configuration) else: config = deepcopy(configuration) diff --git a/tests/specializations/stores/test_bluebrain_nexus.py b/tests/specializations/stores/test_bluebrain_nexus.py index 91684e5ac..877ace356 100644 --- a/tests/specializations/stores/test_bluebrain_nexus.py +++ b/tests/specializations/stores/test_bluebrain_nexus.py @@ -11,7 +11,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with Blue Brain Nexus Forge. If not, see . - +import copy import os from unittest import mock from urllib.parse import quote_plus, urljoin @@ -22,6 +22,7 @@ import pytest from typing import Callable, Union, List +from kgforge.core.commons.files import load_yaml_from_file from kgforge.core.resource import Resource from kgforge.core.archetypes.store import Store from kgforge.core.commons.context import Context @@ -119,17 +120,31 @@ def registered_person(person, store_metadata_value): return person +@pytest.fixture +def production_configuration(): + return load_yaml_from_file( + full_path_relative_to_root("./examples/notebooks/use-cases/prod-forge-nexus.yml") + ) + + +@pytest.fixture +def store_config(production_configuration): + return production_configuration["Store"] + + @pytest.fixture @mock.patch("nexussdk.projects.fetch", return_value=NEXUS_PROJECT_CONTEXT) @mock.patch("nexussdk.resources.fetch", side_effect=nexussdk.HTTPError("404")) -def nexus_store(context_project_patch, metadata_context_patch): - return BlueBrainNexus( - model=MODEL, - endpoint=NEXUS, - bucket=BUCKET, - token=TOKEN, - file_resource_mapping=FILE_RESOURCE_MAPPING, - ) +def nexus_store(context_project_patch, metadata_context_patch, store_config): + + store_config_cp = copy.deepcopy(store_config) + store_config_cp["endpoint"] = NEXUS + store_config_cp["bucket"] = BUCKET + store_config_cp["file_resource_mapping"] = FILE_RESOURCE_MAPPING + store_config_cp["model"] = MODEL + store_config_cp["token"] = TOKEN + + return BlueBrainNexus(**store_config_cp) @pytest.fixture @@ -172,8 +187,9 @@ def test_freeze_nested(nexus_store: Store, nested_registered_resource): do_recursive(assert_frozen_id, nested_registered_resource) -def test_to_resource(nexus_store, registered_building, building_jsonld): - context = _merge_jsonld(registered_building.context, Service.NEXUS_CONTEXT_FALLBACK) +def test_to_resource(nexus_store, registered_building, building_jsonld, store_config): + context_path = store_config["vocabulary"]["metadata"]["iri"] + context = _merge_jsonld(registered_building.context, context_path) payload = building_jsonld(registered_building, "compacted", True, None) payload["@context"] = context result = nexus_store.service.to_resource(payload) From b1737803e49aea97fad1237173fdcc55c899d51f Mon Sep 17 00:00:00 2001 From: Sarah Date: Fri, 2 Feb 2024 15:42:12 +0100 Subject: [PATCH 06/49] Pass view when forge.sparql, forge.elastic, forge.search call (#373) * pass view when sparql, elastic call, todo search * rm unless constants from store * turn view to endpoint * endpoint to view param * rename param * rename param2 * keyword param from forge call * missing underscore * git status * make endpoint refac * edit querying notebook to showcase feature, todo set up better view * refac notebook edit * change view creation mapping * check filters not provided as keyword arg * fix querying notebook, retrieve using resource url * test make endpoint function * use *filters for the store interface and implementations --- .../getting-started/04 - Querying.ipynb | 3034 +++++++++++++++-- kgforge/core/archetypes/dataset_store.py | 78 +- kgforge/core/archetypes/read_only_store.py | 6 +- kgforge/core/archetypes/store.py | 7 +- kgforge/core/commons/es_query_builder.py | 2 +- kgforge/core/commons/query_builder.py | 2 +- kgforge/core/commons/sparql_query_builder.py | 2 +- kgforge/core/forge.py | 123 +- .../specializations/stores/bluebrain_nexus.py | 134 +- kgforge/specializations/stores/demo_store.py | 20 +- .../specializations/stores/nexus/service.py | 79 +- .../stores/sparql/sparql_service.py | 22 +- .../specializations/stores/sparql_store.py | 105 +- .../stores/test_bluebrain_nexus.py | 23 + tests/specializations/stores/test_sparql.py | 2 +- 15 files changed, 3108 insertions(+), 531 deletions(-) diff --git a/examples/notebooks/getting-started/04 - Querying.ipynb b/examples/notebooks/getting-started/04 - Querying.ipynb index 8ae00c605..9c26a3ed4 100644 --- a/examples/notebooks/getting-started/04 - Querying.ipynb +++ b/examples/notebooks/getting-started/04 - Querying.ipynb @@ -17,7 +17,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 141, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:20.068658Z", @@ -39,29 +39,9 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 142, "metadata": {}, - "outputs": [ - { - "ename": "Exception", - "evalue": "Mapping loading failed", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mException\u001b[0m Traceback (most recent call last)", - "Cell \u001b[0;32mIn[2], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m forge \u001b[38;5;241m=\u001b[39m \u001b[43mKnowledgeGraphForge\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43m../../configurations/forge.yml\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m\n", - "File \u001b[0;32m~/work_dir/nexus-forge/venv/lib/python3.8/site-packages/kgforge/core/forge.py:249\u001b[0m, in \u001b[0;36mKnowledgeGraphForge.__init__\u001b[0;34m(self, configuration, **kwargs)\u001b[0m\n\u001b[1;32m 246\u001b[0m resolvers_config \u001b[38;5;241m=\u001b[39m config\u001b[38;5;241m.\u001b[39mpop(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mResolvers\u001b[39m\u001b[38;5;124m\"\u001b[39m, \u001b[38;5;28;01mNone\u001b[39;00m)\n\u001b[1;32m 247\u001b[0m \u001b[38;5;66;03m# Format: Optional[Dict[scope_name, Dict[resolver_name, Resolver]]].\u001b[39;00m\n\u001b[1;32m 248\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_resolvers: Optional[Dict[\u001b[38;5;28mstr\u001b[39m, Dict[\u001b[38;5;28mstr\u001b[39m, Resolver]]] \u001b[38;5;241m=\u001b[39m (\n\u001b[0;32m--> 249\u001b[0m \u001b[43mprepare_resolvers\u001b[49m\u001b[43m(\u001b[49m\u001b[43mresolvers_config\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mstore_config\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 250\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m resolvers_config\n\u001b[1;32m 251\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m\n\u001b[1;32m 252\u001b[0m )\n\u001b[1;32m 254\u001b[0m \u001b[38;5;66;03m# Formatters.\u001b[39;00m\n\u001b[1;32m 255\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_formatters: Optional[Dict[\u001b[38;5;28mstr\u001b[39m, \u001b[38;5;28mstr\u001b[39m]] \u001b[38;5;241m=\u001b[39m config\u001b[38;5;241m.\u001b[39mpop(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mFormatters\u001b[39m\u001b[38;5;124m\"\u001b[39m, \u001b[38;5;28;01mNone\u001b[39;00m)\n", - "File \u001b[0;32m~/work_dir/nexus-forge/venv/lib/python3.8/site-packages/kgforge/core/forge.py:958\u001b[0m, in \u001b[0;36mprepare_resolvers\u001b[0;34m(config, store_config)\u001b[0m\n\u001b[1;32m 955\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mprepare_resolvers\u001b[39m(\n\u001b[1;32m 956\u001b[0m config: Dict, store_config: Dict\n\u001b[1;32m 957\u001b[0m ) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m Dict[\u001b[38;5;28mstr\u001b[39m, Dict[\u001b[38;5;28mstr\u001b[39m, Resolver]]:\n\u001b[0;32m--> 958\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m {\n\u001b[1;32m 959\u001b[0m scope: \u001b[38;5;28mdict\u001b[39m(prepare_resolver(x, store_config) \u001b[38;5;28;01mfor\u001b[39;00m x \u001b[38;5;129;01min\u001b[39;00m configs)\n\u001b[1;32m 960\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m scope, configs \u001b[38;5;129;01min\u001b[39;00m config\u001b[38;5;241m.\u001b[39mitems()\n\u001b[1;32m 961\u001b[0m }\n", - "File \u001b[0;32m~/work_dir/nexus-forge/venv/lib/python3.8/site-packages/kgforge/core/forge.py:959\u001b[0m, in \u001b[0;36m\u001b[0;34m(.0)\u001b[0m\n\u001b[1;32m 955\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mprepare_resolvers\u001b[39m(\n\u001b[1;32m 956\u001b[0m config: Dict, store_config: Dict\n\u001b[1;32m 957\u001b[0m ) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m Dict[\u001b[38;5;28mstr\u001b[39m, Dict[\u001b[38;5;28mstr\u001b[39m, Resolver]]:\n\u001b[1;32m 958\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m {\n\u001b[0;32m--> 959\u001b[0m scope: \u001b[38;5;28;43mdict\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mprepare_resolver\u001b[49m\u001b[43m(\u001b[49m\u001b[43mx\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mstore_config\u001b[49m\u001b[43m)\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;28;43;01mfor\u001b[39;49;00m\u001b[43m \u001b[49m\u001b[43mx\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;129;43;01min\u001b[39;49;00m\u001b[43m \u001b[49m\u001b[43mconfigs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 960\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m scope, configs \u001b[38;5;129;01min\u001b[39;00m config\u001b[38;5;241m.\u001b[39mitems()\n\u001b[1;32m 961\u001b[0m }\n", - "File \u001b[0;32m~/work_dir/nexus-forge/venv/lib/python3.8/site-packages/kgforge/core/forge.py:959\u001b[0m, in \u001b[0;36m\u001b[0;34m(.0)\u001b[0m\n\u001b[1;32m 955\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mprepare_resolvers\u001b[39m(\n\u001b[1;32m 956\u001b[0m config: Dict, store_config: Dict\n\u001b[1;32m 957\u001b[0m ) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m Dict[\u001b[38;5;28mstr\u001b[39m, Dict[\u001b[38;5;28mstr\u001b[39m, Resolver]]:\n\u001b[1;32m 958\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m {\n\u001b[0;32m--> 959\u001b[0m scope: \u001b[38;5;28mdict\u001b[39m(\u001b[43mprepare_resolver\u001b[49m\u001b[43m(\u001b[49m\u001b[43mx\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mstore_config\u001b[49m\u001b[43m)\u001b[49m \u001b[38;5;28;01mfor\u001b[39;00m x \u001b[38;5;129;01min\u001b[39;00m configs)\n\u001b[1;32m 960\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m scope, configs \u001b[38;5;129;01min\u001b[39;00m config\u001b[38;5;241m.\u001b[39mitems()\n\u001b[1;32m 961\u001b[0m }\n", - "File \u001b[0;32m~/work_dir/nexus-forge/venv/lib/python3.8/site-packages/kgforge/core/forge.py:982\u001b[0m, in \u001b[0;36mprepare_resolver\u001b[0;34m(config, store_config)\u001b[0m\n\u001b[1;32m 980\u001b[0m resolver_name \u001b[38;5;241m=\u001b[39m config\u001b[38;5;241m.\u001b[39mpop(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mresolver\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m 981\u001b[0m resolver \u001b[38;5;241m=\u001b[39m import_class(resolver_name, \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mresolvers\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[0;32m--> 982\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m resolver\u001b[38;5;241m.\u001b[39m\u001b[38;5;18m__name__\u001b[39m, \u001b[43mresolver\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mconfig\u001b[49m\u001b[43m)\u001b[49m\n", - "File \u001b[0;32m~/work_dir/nexus-forge/venv/lib/python3.8/site-packages/kgforge/specializations/resolvers/demo_resolver.py:33\u001b[0m, in \u001b[0;36mDemoResolver.__init__\u001b[0;34m(self, source, targets, result_resource_mapping, **source_config)\u001b[0m\n\u001b[1;32m 31\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m__init__\u001b[39m(\u001b[38;5;28mself\u001b[39m, source: \u001b[38;5;28mstr\u001b[39m, targets: List[Dict[\u001b[38;5;28mstr\u001b[39m, Any]], result_resource_mapping: \u001b[38;5;28mstr\u001b[39m,\n\u001b[1;32m 32\u001b[0m \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39msource_config) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m---> 33\u001b[0m \u001b[38;5;28;43msuper\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[38;5;21;43m__init__\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43msource\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mtargets\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mresult_resource_mapping\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43msource_config\u001b[49m\u001b[43m)\u001b[49m\n", - "File \u001b[0;32m~/work_dir/nexus-forge/venv/lib/python3.8/site-packages/kgforge/core/archetypes/resolver.py:53\u001b[0m, in \u001b[0;36mResolver.__init__\u001b[0;34m(self, source, targets, result_resource_mapping, **source_config)\u001b[0m\n\u001b[1;32m 51\u001b[0m filters \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m\n\u001b[1;32m 52\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mtargets[target[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124midentifier\u001b[39m\u001b[38;5;124m\"\u001b[39m]] \u001b[38;5;241m=\u001b[39m {\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mbucket\u001b[39m\u001b[38;5;124m\"\u001b[39m: target[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mbucket\u001b[39m\u001b[38;5;124m\"\u001b[39m], \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mfilters\u001b[39m\u001b[38;5;124m\"\u001b[39m: filters}\n\u001b[0;32m---> 53\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mresult_mapping: Any \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mmapping\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mload\u001b[49m\u001b[43m(\u001b[49m\u001b[43mresult_resource_mapping\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 54\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mservice: Any \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_initialize_service(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39msource, \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mtargets, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39msource_config)\n", - "File \u001b[0;32m~/work_dir/nexus-forge/venv/lib/python3.8/site-packages/kgforge/core/archetypes/mapping.py:69\u001b[0m, in \u001b[0;36mMapping.load\u001b[0;34m(cls, source, mapping_type)\u001b[0m\n\u001b[1;32m 67\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m e \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[1;32m 68\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m e\n\u001b[0;32m---> 69\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mException\u001b[39;00m(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mMapping loading failed\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m 71\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m mapping_type \u001b[38;5;241m==\u001b[39m MappingType\u001b[38;5;241m.\u001b[39mFILE:\n\u001b[1;32m 72\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mcls\u001b[39m\u001b[38;5;241m.\u001b[39mload_file(source)\n", - "\u001b[0;31mException\u001b[0m: Mapping loading failed" - ] - } - ], + "outputs": [], "source": [ "forge = KnowledgeGraphForge(\"../../configurations/forge.yml\")" ] @@ -76,7 +56,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 143, "metadata": {}, "outputs": [], "source": [ @@ -103,7 +83,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 144, "metadata": {}, "outputs": [], "source": [ @@ -112,16 +92,25 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 145, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _register_one\n", + " True\n" + ] + } + ], "source": [ "forge.register(jane)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 146, "metadata": {}, "outputs": [], "source": [ @@ -130,9 +119,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 147, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 147, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "resource == jane" ] @@ -147,7 +147,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 148, "metadata": {}, "outputs": [], "source": [ @@ -156,25 +156,43 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 149, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _register_one\n", + " True\n" + ] + } + ], "source": [ "forge.register(jane)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 150, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _tag_one\n", + " True\n" + ] + } + ], "source": [ "forge.tag(jane, \"v1\")" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 151, "metadata": {}, "outputs": [], "source": [ @@ -183,23 +201,40 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 152, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _update_one\n", + " True\n" + ] + } + ], "source": [ "forge.update(jane)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 153, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.317601Z", "start_time": "2019-09-23T18:50:21.310418Z" } }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "3\n" + ] + } + ], "source": [ "try:\n", " # DemoStore\n", @@ -211,7 +246,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 154, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.332678Z", @@ -225,7 +260,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 155, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.370051Z", @@ -239,7 +274,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 156, "metadata": {}, "outputs": [], "source": [ @@ -248,41 +283,82 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 157, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.379911Z", "start_time": "2019-09-23T18:50:21.373539Z" } }, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 157, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "jane_v1 == jane_v1_tag" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 158, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 158, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "jane_v1 == jane_v1_rev" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 159, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 159, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "jane_v1 != jane" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 160, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1\n" + ] + } + ], "source": [ "try:\n", " # DemoStore\n", @@ -303,7 +379,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 161, "metadata": {}, "outputs": [], "source": [ @@ -312,27 +388,72 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 162, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/b6a3d43a-bf8f-4e4a-bdd5-49a67fb34456',\n", + " '_constrainedBy': 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " '_createdAt': '2024-02-02T09:59:27.956Z',\n", + " '_createdBy': 'https://sandbox.bluebrainnexus.io/v1/realms/github/users/ssssarah',\n", + " '_deprecated': False,\n", + " '_incoming': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2Fb6a3d43a-bf8f-4e4a-bdd5-49a67fb34456/incoming',\n", + " '_outgoing': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2Fb6a3d43a-bf8f-4e4a-bdd5-49a67fb34456/outgoing',\n", + " '_project': 'https://sandbox.bluebrainnexus.io/v1/projects/github-users/ssssarah',\n", + " '_rev': 3,\n", + " '_schemaProject': 'https://sandbox.bluebrainnexus.io/v1/projects/github-users/ssssarah',\n", + " '_self': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2Fb6a3d43a-bf8f-4e4a-bdd5-49a67fb34456',\n", + " '_updatedAt': '2024-02-02T09:59:28.486Z',\n", + " '_updatedBy': 'https://sandbox.bluebrainnexus.io/v1/realms/github/users/ssssarah'}" + ] + }, + "execution_count": 162, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "resource._store_metadata" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 163, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "Action(error=None, message=None, operation='retrieve', succeeded=True)" + ] + }, + "execution_count": 163, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "resource._last_action" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 164, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 164, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "resource._synchronized" ] @@ -342,22 +463,24 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Retrieving using the resorce url\n", + "### Retrieving using the resource url\n", "One can also use the value of `_self` from ._stote_metadata to retrieve a resource" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 165, "metadata": {}, "outputs": [], "source": [ - "import copy" + "import copy\n", + "import string\n", + "import random" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 166, "metadata": {}, "outputs": [], "source": [ @@ -366,25 +489,34 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 167, "metadata": {}, "outputs": [], "source": [ - "other_resource.id = \"https://myincreadibleid-987654321\"" + "other_resource.id = f\"https://my-incredible-id-{''.join(random.choices(string.digits, k=5))}\"" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 168, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _register_one\n", + " True\n" + ] + } + ], "source": [ "forge.register(other_resource)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 169, "metadata": {}, "outputs": [], "source": [ @@ -393,7 +525,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 170, "metadata": {}, "outputs": [], "source": [ @@ -411,9 +543,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 171, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 171, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "same_resource_id == same_resource_url" ] @@ -429,7 +572,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 172, "metadata": {}, "outputs": [], "source": [ @@ -438,36 +581,96 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 173, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/b6a3d43a-bf8f-4e4a-bdd5-49a67fb34456',\n", + " 'type': 'Person',\n", + " 'award': 'Nobel',\n", + " 'email': ['jane.doe@epfl.ch', 'jane.doe@example.org'],\n", + " 'name': 'Jane Doe'}" + ] + }, + "execution_count": 173, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_json(resource)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 174, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/b6a3d43a-bf8f-4e4a-bdd5-49a67fb34456',\n", + " '_constrainedBy': 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " '_createdAt': '2024-02-02T09:59:27.956Z',\n", + " '_createdBy': 'https://sandbox.bluebrainnexus.io/v1/realms/github/users/ssssarah',\n", + " '_deprecated': False,\n", + " '_incoming': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2Fb6a3d43a-bf8f-4e4a-bdd5-49a67fb34456/incoming',\n", + " '_outgoing': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2Fb6a3d43a-bf8f-4e4a-bdd5-49a67fb34456/outgoing',\n", + " '_project': 'https://sandbox.bluebrainnexus.io/v1/projects/github-users/ssssarah',\n", + " '_rev': 3,\n", + " '_schemaProject': 'https://sandbox.bluebrainnexus.io/v1/projects/github-users/ssssarah',\n", + " '_self': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2Fb6a3d43a-bf8f-4e4a-bdd5-49a67fb34456',\n", + " '_updatedAt': '2024-02-02T09:59:28.486Z',\n", + " '_updatedBy': 'https://sandbox.bluebrainnexus.io/v1/realms/github/users/ssssarah'}" + ] + }, + "execution_count": 174, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "resource._store_metadata" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 175, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "Action(error=None, message=None, operation='retrieve', succeeded=True)" + ] + }, + "execution_count": 175, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "resource._last_action" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 176, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 176, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "resource._synchronized" ] @@ -482,18 +685,39 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 177, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " catch_http_error\n", + " RetrievalError: 404 Client Error: Not Found for url: https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/%3A%2F%2F123/source\n", + "\n" + ] + } + ], "source": [ "resource = forge.retrieve(\"123\")" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 178, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 178, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "resource is None" ] @@ -516,7 +740,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 179, "metadata": {}, "outputs": [], "source": [ @@ -526,7 +750,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 180, "metadata": {}, "outputs": [], "source": [ @@ -536,7 +760,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 181, "metadata": {}, "outputs": [], "source": [ @@ -546,18 +770,53 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 182, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _register_one\n", + " True\n" + ] + } + ], "source": [ "forge.register(dataset)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 183, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/f0689ed3-29b4-4462-867c-73e53197ec37',\n", + " 'type': 'Dataset',\n", + " 'contribution': [{'type': 'Contribution',\n", + " 'agent': {'type': 'Person', 'name': 'Jane Doe'}},\n", + " {'type': 'Contribution', 'agent': {'type': 'Person', 'name': 'John Smith'}}],\n", + " 'distribution': {'type': 'DataDownload',\n", + " 'atLocation': {'type': 'Location',\n", + " 'store': {'id': 'https://bluebrain.github.io/nexus/vocabulary/diskStorageDefault',\n", + " 'type': 'DiskStorage',\n", + " '_rev': 1}},\n", + " 'contentSize': {'unitCode': 'bytes', 'value': 477},\n", + " 'contentUrl': 'https://sandbox.bluebrainnexus.io/v1/files/github-users/ssssarah/https%3A%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2F69b4201d-bc75-4b8e-be85-0817214c2c39',\n", + " 'digest': {'algorithm': 'SHA-256',\n", + " 'value': '789aa07948683fe036ac29811814a826b703b562f7d168eb70dee1fabde26859'},\n", + " 'encodingFormat': 'text/tab-separated-values',\n", + " 'name': 'associations.tsv'}}" + ] + }, + "execution_count": 183, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_json(dataset)" ] @@ -582,7 +841,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 184, "metadata": {}, "outputs": [], "source": [ @@ -615,7 +874,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 185, "metadata": {}, "outputs": [], "source": [ @@ -624,45 +883,324 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 186, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "list" + ] + }, + "execution_count": 186, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "type(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 187, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 187, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "len(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 188, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
idtypeawardnameemail
0https://sandbox.bluebrainnexus.io/v1/resources...Person[Nobel]Jane DoeNaN
1https://sandbox.bluebrainnexus.io/v1/resources...Person[Nobel]Jane Doe[jane.doe@epfl.ch, jane.doe@example.org]
2https://sandbox.bluebrainnexus.io/v1/resources...Person[Nobel]Jane DoeNaN
\n", + "
" + ], + "text/plain": [ + " id type award \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", + "\n", + " name email \n", + "0 Jane Doe NaN \n", + "1 Jane Doe [jane.doe@epfl.ch, jane.doe@example.org] \n", + "2 Jane Doe NaN " + ] + }, + "execution_count": 188, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_dataframe(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 189, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
idtypeawardname_constrainedBy_createdAt_createdBy_deprecated_incoming_outgoing_project_rev_schemaProject_self_updatedAt_updatedByemail
0https://sandbox.bluebrainnexus.io/v1/resources...Person[Nobel]Jane Doehttps://bluebrain.github.io/nexus/schemas/unco...2024-02-01T17:12:35.988Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...Falsehttps://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/projects/...1https://sandbox.bluebrainnexus.io/v1/projects/...https://sandbox.bluebrainnexus.io/v1/resources...2024-02-01T17:12:35.988Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...NaN
1https://sandbox.bluebrainnexus.io/v1/resources...Person[Nobel]Jane Doehttps://bluebrain.github.io/nexus/schemas/unco...2024-02-01T17:12:36.480Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...Falsehttps://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/projects/...3https://sandbox.bluebrainnexus.io/v1/projects/...https://sandbox.bluebrainnexus.io/v1/resources...2024-02-01T17:12:36.836Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...[jane.doe@epfl.ch, jane.doe@example.org]
2https://sandbox.bluebrainnexus.io/v1/resources...Person[Nobel]Jane Doehttps://bluebrain.github.io/nexus/schemas/unco...2024-02-01T17:40:39.386Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...Falsehttps://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/projects/...1https://sandbox.bluebrainnexus.io/v1/projects/...https://sandbox.bluebrainnexus.io/v1/resources...2024-02-01T17:40:39.386Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...NaN
\n", + "
" + ], + "text/plain": [ + " id type award \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", + "\n", + " name _constrainedBy \\\n", + "0 Jane Doe https://bluebrain.github.io/nexus/schemas/unco... \n", + "1 Jane Doe https://bluebrain.github.io/nexus/schemas/unco... \n", + "2 Jane Doe https://bluebrain.github.io/nexus/schemas/unco... \n", + "\n", + " _createdAt \\\n", + "0 2024-02-01T17:12:35.988Z \n", + "1 2024-02-01T17:12:36.480Z \n", + "2 2024-02-01T17:40:39.386Z \n", + "\n", + " _createdBy _deprecated \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/realms/gi... False \n", + "1 https://sandbox.bluebrainnexus.io/v1/realms/gi... False \n", + "2 https://sandbox.bluebrainnexus.io/v1/realms/gi... False \n", + "\n", + " _incoming \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "\n", + " _outgoing \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "\n", + " _project _rev \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/projects/... 1 \n", + "1 https://sandbox.bluebrainnexus.io/v1/projects/... 3 \n", + "2 https://sandbox.bluebrainnexus.io/v1/projects/... 1 \n", + "\n", + " _schemaProject \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/projects/... \n", + "1 https://sandbox.bluebrainnexus.io/v1/projects/... \n", + "2 https://sandbox.bluebrainnexus.io/v1/projects/... \n", + "\n", + " _self \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "\n", + " _updatedAt \\\n", + "0 2024-02-01T17:12:35.988Z \n", + "1 2024-02-01T17:12:36.836Z \n", + "2 2024-02-01T17:40:39.386Z \n", + "\n", + " _updatedBy \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", + "1 https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", + "2 https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", + "\n", + " email \n", + "0 NaN \n", + "1 [jane.doe@epfl.ch, jane.doe@example.org] \n", + "2 NaN " + ] + }, + "execution_count": 189, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_dataframe(resources, store_metadata=True)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 190, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 190, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# Search results are not synchronized\n", "resources[0]._synchronized" @@ -686,7 +1224,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 191, "metadata": {}, "outputs": [], "source": [ @@ -696,20 +1234,189 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 192, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 192, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "len(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 193, "metadata": { "scrolled": true }, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
idtypecontributiondistribution.typedistribution.atLocation.typedistribution.atLocation.store.iddistribution.atLocation.store.typedistribution.atLocation.store._revdistribution.contentSize.unitCodedistribution.contentSize.valuedistribution.contentUrldistribution.digest.algorithmdistribution.digest.valuedistribution.encodingFormatdistribution.namename
0https://sandbox.bluebrainnexus.io/v1/resources...Dataset[{'type': 'Contribution', 'agent': {'type': 'P...DataDownloadLocationhttps://bluebrain.github.io/nexus/vocabulary/d...DiskStorage1bytes477https://sandbox.bluebrainnexus.io/v1/files/git...SHA-256789aa07948683fe036ac29811814a826b703b562f7d168...text/tab-separated-valuesassociations.tsvNaN
1https://sandbox.bluebrainnexus.io/v1/resources...DatasetNaNDataDownloadLocationhttps://bluebrain.github.io/nexus/vocabulary/d...DiskStorage1bytes477https://sandbox.bluebrainnexus.io/v1/files/git...SHA-256789aa07948683fe036ac29811814a826b703b562f7d168...text/tab-separated-valuesassociations.tsvInteresting Persons
2https://sandbox.bluebrainnexus.io/v1/resources...DatasetNaNDataDownloadLocationhttps://bluebrain.github.io/nexus/vocabulary/d...DiskStorage1bytes477https://sandbox.bluebrainnexus.io/v1/files/git...SHA-256789aa07948683fe036ac29811814a826b703b562f7d168...text/tab-separated-valuesassociations.tsvInteresting Persons
\n", + "
" + ], + "text/plain": [ + " id type \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... Dataset \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... Dataset \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... Dataset \n", + "\n", + " contribution distribution.type \\\n", + "0 [{'type': 'Contribution', 'agent': {'type': 'P... DataDownload \n", + "1 NaN DataDownload \n", + "2 NaN DataDownload \n", + "\n", + " distribution.atLocation.type \\\n", + "0 Location \n", + "1 Location \n", + "2 Location \n", + "\n", + " distribution.atLocation.store.id \\\n", + "0 https://bluebrain.github.io/nexus/vocabulary/d... \n", + "1 https://bluebrain.github.io/nexus/vocabulary/d... \n", + "2 https://bluebrain.github.io/nexus/vocabulary/d... \n", + "\n", + " distribution.atLocation.store.type distribution.atLocation.store._rev \\\n", + "0 DiskStorage 1 \n", + "1 DiskStorage 1 \n", + "2 DiskStorage 1 \n", + "\n", + " distribution.contentSize.unitCode distribution.contentSize.value \\\n", + "0 bytes 477 \n", + "1 bytes 477 \n", + "2 bytes 477 \n", + "\n", + " distribution.contentUrl \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/files/git... \n", + "1 https://sandbox.bluebrainnexus.io/v1/files/git... \n", + "2 https://sandbox.bluebrainnexus.io/v1/files/git... \n", + "\n", + " distribution.digest.algorithm \\\n", + "0 SHA-256 \n", + "1 SHA-256 \n", + "2 SHA-256 \n", + "\n", + " distribution.digest.value \\\n", + "0 789aa07948683fe036ac29811814a826b703b562f7d168... \n", + "1 789aa07948683fe036ac29811814a826b703b562f7d168... \n", + "2 789aa07948683fe036ac29811814a826b703b562f7d168... \n", + "\n", + " distribution.encodingFormat distribution.name name \n", + "0 text/tab-separated-values associations.tsv NaN \n", + "1 text/tab-separated-values associations.tsv Interesting Persons \n", + "2 text/tab-separated-values associations.tsv Interesting Persons " + ] + }, + "execution_count": 193, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_dataframe(resources)" ] @@ -731,7 +1438,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 194, "metadata": {}, "outputs": [], "source": [ @@ -747,27 +1454,88 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 195, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "list" + ] + }, + "execution_count": 195, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "type(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 196, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 196, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "len(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 197, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
\n", + "
" + ], + "text/plain": [ + "Empty DataFrame\n", + "Columns: []\n", + "Index: []" + ] + }, + "execution_count": 197, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_dataframe(resources, store_metadata=True)" ] @@ -790,16 +1558,32 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 198, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "['__eq__ (EQUAL)',\n", + " '__ne__ (NOT_EQUAL)',\n", + " '__lt__ (LOWER_THAN)',\n", + " '__le__ (LOWER_OR_Equal_Than)',\n", + " '__gt__ (GREATER_Than)',\n", + " '__ge__ (GREATER_OR_Equal_Than)']" + ] + }, + "execution_count": 198, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "[f\"{op.value} ({op.name})\" for op in FilterOperator] # These are equivalent to the Python comparison operators" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 199, "metadata": {}, "outputs": [], "source": [ @@ -814,27 +1598,245 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 200, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "list" + ] + }, + "execution_count": 200, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "type(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 201, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 201, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "len(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 202, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
idtypecontributiondistribution.typedistribution.atLocation.typedistribution.atLocation.store.iddistribution.atLocation.store.typedistribution.atLocation.store._revdistribution.contentSize.unitCodedistribution.contentSize.value..._deprecated_incoming_outgoing_project_rev_schemaProject_self_updatedAt_updatedByname
0https://sandbox.bluebrainnexus.io/v1/resources...Dataset[{'type': 'Contribution', 'agent': {'type': 'P...DataDownloadLocationhttps://bluebrain.github.io/nexus/vocabulary/d...DiskStorage1bytes477...Falsehttps://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/projects/...1https://sandbox.bluebrainnexus.io/v1/projects/...https://sandbox.bluebrainnexus.io/v1/resources...2024-02-02T09:47:31.662Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...NaN
1https://sandbox.bluebrainnexus.io/v1/resources...DatasetNaNDataDownloadLocationhttps://bluebrain.github.io/nexus/vocabulary/d...DiskStorage1bytes477...Falsehttps://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/projects/...1https://sandbox.bluebrainnexus.io/v1/projects/...https://sandbox.bluebrainnexus.io/v1/resources...2022-12-07T16:07:59.200Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...Interesting Persons
2https://sandbox.bluebrainnexus.io/v1/resources...DatasetNaNDataDownloadLocationhttps://bluebrain.github.io/nexus/vocabulary/d...DiskStorage1bytes477...Falsehttps://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/projects/...1https://sandbox.bluebrainnexus.io/v1/projects/...https://sandbox.bluebrainnexus.io/v1/resources...2022-12-08T09:46:09.139Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...Interesting Persons
\n", + "

3 rows × 28 columns

\n", + "
" + ], + "text/plain": [ + " id type \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... Dataset \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... Dataset \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... Dataset \n", + "\n", + " contribution distribution.type \\\n", + "0 [{'type': 'Contribution', 'agent': {'type': 'P... DataDownload \n", + "1 NaN DataDownload \n", + "2 NaN DataDownload \n", + "\n", + " distribution.atLocation.type \\\n", + "0 Location \n", + "1 Location \n", + "2 Location \n", + "\n", + " distribution.atLocation.store.id \\\n", + "0 https://bluebrain.github.io/nexus/vocabulary/d... \n", + "1 https://bluebrain.github.io/nexus/vocabulary/d... \n", + "2 https://bluebrain.github.io/nexus/vocabulary/d... \n", + "\n", + " distribution.atLocation.store.type distribution.atLocation.store._rev \\\n", + "0 DiskStorage 1 \n", + "1 DiskStorage 1 \n", + "2 DiskStorage 1 \n", + "\n", + " distribution.contentSize.unitCode distribution.contentSize.value ... \\\n", + "0 bytes 477 ... \n", + "1 bytes 477 ... \n", + "2 bytes 477 ... \n", + "\n", + " _deprecated _incoming \\\n", + "0 False https://sandbox.bluebrainnexus.io/v1/resources... \n", + "1 False https://sandbox.bluebrainnexus.io/v1/resources... \n", + "2 False https://sandbox.bluebrainnexus.io/v1/resources... \n", + "\n", + " _outgoing \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "\n", + " _project _rev \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/projects/... 1 \n", + "1 https://sandbox.bluebrainnexus.io/v1/projects/... 1 \n", + "2 https://sandbox.bluebrainnexus.io/v1/projects/... 1 \n", + "\n", + " _schemaProject \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/projects/... \n", + "1 https://sandbox.bluebrainnexus.io/v1/projects/... \n", + "2 https://sandbox.bluebrainnexus.io/v1/projects/... \n", + "\n", + " _self \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "\n", + " _updatedAt \\\n", + "0 2024-02-02T09:47:31.662Z \n", + "1 2022-12-07T16:07:59.200Z \n", + "2 2022-12-08T09:46:09.139Z \n", + "\n", + " _updatedBy name \n", + "0 https://sandbox.bluebrainnexus.io/v1/realms/gi... NaN \n", + "1 https://sandbox.bluebrainnexus.io/v1/realms/gi... Interesting Persons \n", + "2 https://sandbox.bluebrainnexus.io/v1/realms/gi... Interesting Persons \n", + "\n", + "[3 rows x 28 columns]" + ] + }, + "execution_count": 202, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_dataframe(resources, store_metadata=True)" ] @@ -848,7 +1850,10 @@ "\n", "Two types of search endpoints are supported: 'sparql' (default) for graph queries and 'elastic' for document oriented queries. The types of available search endpoint can be configured (see [00-Initialization.ipynb](00%20-%20Initialization.ipynb) for an example of search endpoints config) or set when creating a KnowledgeGraphForge session using the 'searchendpoints' arguments.\n", "\n", - "The search endpoint to hit when calling forge.search(...) is 'sparql' by default but can be specified using the 'search_endpoint' argument." + "The search endpoint to hit when calling forge.search(...) is 'sparql' by default but can be specified using the 'search_endpoint' argument.\n", + "\n", + "The data that is available through these searchendpoints is limited to data indexed in specific indices that are configured through views. The project is set-up with default a elastic search view that indexes all data, and a default sparql view that indexes all data.\n", + "You may define a view that targets a subset of the data based on some filters." ] }, { @@ -861,7 +1866,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 203, "metadata": {}, "outputs": [], "source": [ @@ -872,27 +1877,221 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 204, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "list" + ] + }, + "execution_count": 204, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "type(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 205, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 205, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "len(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 206, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
idtypeawardname_constrainedBy_createdAt_createdBy_deprecated_incoming_outgoing_project_rev_schemaProject_self_updatedAt_updatedByemail
0https://sandbox.bluebrainnexus.io/v1/resources...Person[Nobel]Jane Doehttps://bluebrain.github.io/nexus/schemas/unco...2024-02-01T17:12:35.988Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...Falsehttps://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/projects/...1https://sandbox.bluebrainnexus.io/v1/projects/...https://sandbox.bluebrainnexus.io/v1/resources...2024-02-01T17:12:35.988Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...NaN
1https://sandbox.bluebrainnexus.io/v1/resources...Person[Nobel]Jane Doehttps://bluebrain.github.io/nexus/schemas/unco...2024-02-01T17:12:36.480Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...Falsehttps://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/projects/...3https://sandbox.bluebrainnexus.io/v1/projects/...https://sandbox.bluebrainnexus.io/v1/resources...2024-02-01T17:12:36.836Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...[jane.doe@epfl.ch, jane.doe@example.org]
2https://sandbox.bluebrainnexus.io/v1/resources...Person[Nobel]Jane Doehttps://bluebrain.github.io/nexus/schemas/unco...2024-02-01T17:40:39.386Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...Falsehttps://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/resources...https://sandbox.bluebrainnexus.io/v1/projects/...1https://sandbox.bluebrainnexus.io/v1/projects/...https://sandbox.bluebrainnexus.io/v1/resources...2024-02-01T17:40:39.386Zhttps://sandbox.bluebrainnexus.io/v1/realms/gi...NaN
\n", + "
" + ], + "text/plain": [ + " id type award \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", + "\n", + " name _constrainedBy \\\n", + "0 Jane Doe https://bluebrain.github.io/nexus/schemas/unco... \n", + "1 Jane Doe https://bluebrain.github.io/nexus/schemas/unco... \n", + "2 Jane Doe https://bluebrain.github.io/nexus/schemas/unco... \n", + "\n", + " _createdAt \\\n", + "0 2024-02-01T17:12:35.988Z \n", + "1 2024-02-01T17:12:36.480Z \n", + "2 2024-02-01T17:40:39.386Z \n", + "\n", + " _createdBy _deprecated \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/realms/gi... False \n", + "1 https://sandbox.bluebrainnexus.io/v1/realms/gi... False \n", + "2 https://sandbox.bluebrainnexus.io/v1/realms/gi... False \n", + "\n", + " _incoming \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "\n", + " _outgoing \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "\n", + " _project _rev \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/projects/... 1 \n", + "1 https://sandbox.bluebrainnexus.io/v1/projects/... 3 \n", + "2 https://sandbox.bluebrainnexus.io/v1/projects/... 1 \n", + "\n", + " _schemaProject \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/projects/... \n", + "1 https://sandbox.bluebrainnexus.io/v1/projects/... \n", + "2 https://sandbox.bluebrainnexus.io/v1/projects/... \n", + "\n", + " _self \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "\n", + " _updatedAt \\\n", + "0 2024-02-01T17:12:35.988Z \n", + "1 2024-02-01T17:12:36.836Z \n", + "2 2024-02-01T17:40:39.386Z \n", + "\n", + " _updatedBy \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", + "1 https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", + "2 https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", + "\n", + " email \n", + "0 NaN \n", + "1 [jane.doe@epfl.ch, jane.doe@example.org] \n", + "2 NaN " + ] + }, + "execution_count": 206, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_dataframe(resources, store_metadata=True)" ] @@ -907,49 +2106,139 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 207, "metadata": {}, "outputs": [], "source": [ "# Search for resources of type Person and retrieve their ids and names.\n", "filters = {\"@type\": \"http://schema.org/Person\"}\n", - "resources = forge.search(filters, limit=3, \n", - " search_endpoint='elastic', \n", - " includes=[\"@id\", \"@type\"]) # fields can also be excluded with 'excludes'" + "resources = forge.search(\n", + " filters, limit=3, search_endpoint='elastic', includes=[\"@id\", \"@type\"]\n", + ") # fields can also be excluded with 'excludes'" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 208, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "list" + ] + }, + "execution_count": 208, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "type(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 209, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 209, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "len(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 210, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
idtype
0https://sandbox.bluebrainnexus.io/v1/resources...http://schema.org/Person
1https://sandbox.bluebrainnexus.io/v1/resources...http://schema.org/Person
2https://sandbox.bluebrainnexus.io/v1/resources...http://schema.org/Person
\n", + "
" + ], + "text/plain": [ + " id type\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... http://schema.org/Person\n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... http://schema.org/Person\n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... http://schema.org/Person" + ] + }, + "execution_count": 210, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_dataframe(resources, store_metadata=True)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 211, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 211, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "# Search results are not synchronized\n", "resources[0]._synchronized" @@ -957,22 +2246,163 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 212, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/e01663b6-604b-42db-b958-da9fbc1baca2'" + ] + }, + "execution_count": 212, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "resources[0].id" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 213, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "'http://schema.org/Person'" + ] + }, + "execution_count": 213, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "resources[0].type" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### ElasticSearch Endpoint - Alternative view" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Create a view that only indexes resources of type http://schema.org/Person" + ] + }, + { + "cell_type": "code", + "execution_count": 214, + "metadata": {}, + "outputs": [], + "source": [ + "import requests \n", + "\n", + "payload = {\n", + " \"@type\": [\"View\", \"ElasticSearchView\"],\n", + " \"pipeline\": [{\n", + " \"name\": \"filterByType\",\n", + " \"config\": {\"types\": [\"http://schema.org/Person\"]}\n", + " }],\n", + " \"mapping\": {\n", + " \"dynamic\": True,\n", + " \"properties\": {\n", + " \"@id\": {\n", + " \"type\": \"keyword\"\n", + " },\n", + " \"@type\": {\n", + " \"type\": \"keyword\"\n", + " }\n", + " }\n", + " }\n", + "}\n", + "\n", + "url = f\"{forge._store.endpoint}/views/{forge._store.bucket}\"\n", + "\n", + "headers = {\n", + " \"mode\": \"cors\",\n", + " \"Content-Type\": \"application/json\",\n", + " \"Accept\": \"application/ld+json, application/json\",\n", + " \"Authorization\": \"Bearer \" + forge._store.token\n", + "}\n", + "response = requests.post(url=url, headers=headers, json=payload)" + ] + }, + { + "cell_type": "code", + "execution_count": 215, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/6562a440-386a-4128-9fe7-f42f0c9b6f38'" + ] + }, + "execution_count": 215, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "view_id = response.json()[\"@id\"]\n", + "view_id" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Query the view (may take a few seconds to get a response due to indexing time)" + ] + }, + { + "cell_type": "code", + "execution_count": 281, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Submitted query: {'query': {'bool': {'filter': [{'term': {'@type': 'Dataset'}}], 'must': [{'match': {'_deprecated': False}}], 'must_not': []}}, 'size': 100}\n", + "Submitted query: {'query': {'bool': {'filter': [{'term': {'@type': 'Person'}}], 'must': [{'match': {'_deprecated': False}}], 'must_not': []}}, 'size': 100}\n" + ] + }, + { + "data": { + "text/plain": [ + "(0, 100)" + ] + }, + "execution_count": 281, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result_1 = forge.search({\"@type\": \"Dataset\"}, search_endpoint='elastic', view=view_id, cross_bucket=True, debug=True)\n", + "\n", + "result_2 = forge.search({\"@type\": \"Person\"}, search_endpoint='elastic', view=view_id, cross_bucket=True, debug=True)\n", + "\n", + "len(result_1), len(result_2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Providing a view is feature that is also available through the forge.elastic, and forge.sparql calls" + ] + }, { "attachments": {}, "cell_type": "markdown", @@ -984,7 +2414,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 217, "metadata": {}, "outputs": [], "source": [ @@ -993,34 +2423,235 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 218, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "list" + ] + }, + "execution_count": 218, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "type(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 219, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 219, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "len(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 220, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
idtypeagent.typeagent.gender.idagent.gender.typeagent.gender.labelagent.namedistribution.typedistribution.atLocation.typedistribution.atLocation.store.iddistribution.atLocation.store.typedistribution.atLocation.store._revdistribution.contentSize.unitCodedistribution.contentSize.valuedistribution.contentUrldistribution.digest.algorithmdistribution.digest.valuedistribution.encodingFormatdistribution.namename
0https://sandbox.bluebrainnexus.io/v1/resources...AssociationPersonhttp://purl.obolibrary.org/obo/PATO_0000383LabeledOntologyEntityfemaleMarie CurieDataDownloadLocationhttps://bluebrain.github.io/nexus/vocabulary/d...DiskStorage1.0bytes46.0https://sandbox.bluebrainnexus.io/v1/files/git...SHA-256e0fe65f725bf28fe2b88c7bafb51fb5ef1df0ab14c68a3...text/plainmarie_curie.txtCurie Association
1https://sandbox.bluebrainnexus.io/v1/resources...AssociationPersonhttp://purl.obolibrary.org/obo/PATO_0000384LabeledOntologyEntitymaleAlbert EinsteinDataDownloadLocationhttps://bluebrain.github.io/nexus/vocabulary/d...DiskStorage1.0bytes50.0https://sandbox.bluebrainnexus.io/v1/files/git...SHA-25691a5ce5c84dc5bead730a4b49d0698b4aaef4bc06ce164...text/plainalbert_einstein.txtEinstein Association
2https://sandbox.bluebrainnexus.io/v1/resources...AssociationPersonNaNNaNNaNJane DoeNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
\n", + "
" + ], + "text/plain": [ + " id type agent.type \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... Association Person \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... Association Person \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... Association Person \n", + "\n", + " agent.gender.id agent.gender.type \\\n", + "0 http://purl.obolibrary.org/obo/PATO_0000383 LabeledOntologyEntity \n", + "1 http://purl.obolibrary.org/obo/PATO_0000384 LabeledOntologyEntity \n", + "2 NaN NaN \n", + "\n", + " agent.gender.label agent.name distribution.type \\\n", + "0 female Marie Curie DataDownload \n", + "1 male Albert Einstein DataDownload \n", + "2 NaN Jane Doe NaN \n", + "\n", + " distribution.atLocation.type \\\n", + "0 Location \n", + "1 Location \n", + "2 NaN \n", + "\n", + " distribution.atLocation.store.id \\\n", + "0 https://bluebrain.github.io/nexus/vocabulary/d... \n", + "1 https://bluebrain.github.io/nexus/vocabulary/d... \n", + "2 NaN \n", + "\n", + " distribution.atLocation.store.type distribution.atLocation.store._rev \\\n", + "0 DiskStorage 1.0 \n", + "1 DiskStorage 1.0 \n", + "2 NaN NaN \n", + "\n", + " distribution.contentSize.unitCode distribution.contentSize.value \\\n", + "0 bytes 46.0 \n", + "1 bytes 50.0 \n", + "2 NaN NaN \n", + "\n", + " distribution.contentUrl \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/files/git... \n", + "1 https://sandbox.bluebrainnexus.io/v1/files/git... \n", + "2 NaN \n", + "\n", + " distribution.digest.algorithm \\\n", + "0 SHA-256 \n", + "1 SHA-256 \n", + "2 NaN \n", + "\n", + " distribution.digest.value \\\n", + "0 e0fe65f725bf28fe2b88c7bafb51fb5ef1df0ab14c68a3... \n", + "1 91a5ce5c84dc5bead730a4b49d0698b4aaef4bc06ce164... \n", + "2 NaN \n", + "\n", + " distribution.encodingFormat distribution.name name \n", + "0 text/plain marie_curie.txt Curie Association \n", + "1 text/plain albert_einstein.txt Einstein Association \n", + "2 NaN NaN NaN " + ] + }, + "execution_count": 220, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_dataframe(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 221, "metadata": {}, "outputs": [], "source": [ @@ -1030,27 +2661,88 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 222, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "list" + ] + }, + "execution_count": 222, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "type(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 223, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 223, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "len(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 224, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
\n", + "
" + ], + "text/plain": [ + "Empty DataFrame\n", + "Columns: []\n", + "Index: []" + ] + }, + "execution_count": 224, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_dataframe(resources)" ] @@ -1066,7 +2758,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 225, "metadata": {}, "outputs": [], "source": [ @@ -1075,27 +2767,228 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 226, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "list" + ] + }, + "execution_count": 226, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "type(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 227, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 227, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "len(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 228, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
idtypeagent.typeagent.gender.idagent.gender.typeagent.gender.labelagent.namedistribution.typedistribution.atLocation.typedistribution.atLocation.store.iddistribution.atLocation.store.typedistribution.atLocation.store._revdistribution.contentSize.unitCodedistribution.contentSize.valuedistribution.contentUrldistribution.digest.algorithmdistribution.digest.valuedistribution.encodingFormatdistribution.namename
0https://sandbox.bluebrainnexus.io/v1/resources...AssociationPersonhttp://purl.obolibrary.org/obo/PATO_0000383LabeledOntologyEntityfemaleMarie CurieDataDownloadLocationhttps://bluebrain.github.io/nexus/vocabulary/d...DiskStorage1.0bytes46.0https://sandbox.bluebrainnexus.io/v1/files/git...SHA-256e0fe65f725bf28fe2b88c7bafb51fb5ef1df0ab14c68a3...text/plainmarie_curie.txtCurie Association
1https://sandbox.bluebrainnexus.io/v1/resources...AssociationPersonhttp://purl.obolibrary.org/obo/PATO_0000384LabeledOntologyEntitymaleAlbert EinsteinDataDownloadLocationhttps://bluebrain.github.io/nexus/vocabulary/d...DiskStorage1.0bytes50.0https://sandbox.bluebrainnexus.io/v1/files/git...SHA-25691a5ce5c84dc5bead730a4b49d0698b4aaef4bc06ce164...text/plainalbert_einstein.txtEinstein Association
2https://sandbox.bluebrainnexus.io/v1/resources...AssociationPersonNaNNaNNaNJane DoeNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
\n", + "
" + ], + "text/plain": [ + " id type agent.type \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... Association Person \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... Association Person \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... Association Person \n", + "\n", + " agent.gender.id agent.gender.type \\\n", + "0 http://purl.obolibrary.org/obo/PATO_0000383 LabeledOntologyEntity \n", + "1 http://purl.obolibrary.org/obo/PATO_0000384 LabeledOntologyEntity \n", + "2 NaN NaN \n", + "\n", + " agent.gender.label agent.name distribution.type \\\n", + "0 female Marie Curie DataDownload \n", + "1 male Albert Einstein DataDownload \n", + "2 NaN Jane Doe NaN \n", + "\n", + " distribution.atLocation.type \\\n", + "0 Location \n", + "1 Location \n", + "2 NaN \n", + "\n", + " distribution.atLocation.store.id \\\n", + "0 https://bluebrain.github.io/nexus/vocabulary/d... \n", + "1 https://bluebrain.github.io/nexus/vocabulary/d... \n", + "2 NaN \n", + "\n", + " distribution.atLocation.store.type distribution.atLocation.store._rev \\\n", + "0 DiskStorage 1.0 \n", + "1 DiskStorage 1.0 \n", + "2 NaN NaN \n", + "\n", + " distribution.contentSize.unitCode distribution.contentSize.value \\\n", + "0 bytes 46.0 \n", + "1 bytes 50.0 \n", + "2 NaN NaN \n", + "\n", + " distribution.contentUrl \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/files/git... \n", + "1 https://sandbox.bluebrainnexus.io/v1/files/git... \n", + "2 NaN \n", + "\n", + " distribution.digest.algorithm \\\n", + "0 SHA-256 \n", + "1 SHA-256 \n", + "2 NaN \n", + "\n", + " distribution.digest.value \\\n", + "0 e0fe65f725bf28fe2b88c7bafb51fb5ef1df0ab14c68a3... \n", + "1 91a5ce5c84dc5bead730a4b49d0698b4aaef4bc06ce164... \n", + "2 NaN \n", + "\n", + " distribution.encodingFormat distribution.name name \n", + "0 text/plain marie_curie.txt Curie Association \n", + "1 text/plain albert_einstein.txt Einstein Association \n", + "2 NaN NaN NaN " + ] + }, + "execution_count": 228, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_dataframe(resources)" ] @@ -1132,7 +3025,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 229, "metadata": {}, "outputs": [], "source": [ @@ -1142,7 +3035,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 230, "metadata": {}, "outputs": [], "source": [ @@ -1152,7 +3045,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 231, "metadata": {}, "outputs": [], "source": [ @@ -1161,20 +3054,162 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 232, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _register_one\n", + " True\n" + ] + } + ], "source": [ "forge.register(association)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 233, "metadata": { "scrolled": true }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " id: \"\"\n", + " type:\n", + " {\n", + " id: \"\"\n", + " }\n", + " annotation:\n", + " {\n", + " id: \"\"\n", + " type: Annotation\n", + " hasBody:\n", + " {\n", + " id: \"\"\n", + " type:\n", + " {\n", + " id: \"\"\n", + " }\n", + " label: \"\"\n", + " note: \"\"\n", + " }\n", + " hasTarget:\n", + " {\n", + " id: \"\"\n", + " type: AnnotationTarget\n", + " }\n", + " note: \"\"\n", + " }\n", + " brainLocation:\n", + " {\n", + " id: \"\"\n", + " type: BrainLocation\n", + " atlasSpatialReferenceSystem:\n", + " {\n", + " id: \"\"\n", + " type: AtlasSpatialReferenceSystem\n", + " }\n", + " brainRegion:\n", + " {\n", + " id: \"\"\n", + " label: \"\"\n", + " }\n", + " coordinatesInBrainAtlas:\n", + " {\n", + " id: \"\"\n", + " valueX: 0.0\n", + " valueY: 0.0\n", + " valueZ: 0.0\n", + " }\n", + " coordinatesInSlice:\n", + " {\n", + " spatialReferenceSystem:\n", + " {\n", + " id: \"\"\n", + " type: SpatialReferenceSystem\n", + " }\n", + " valueX: 0.0\n", + " valueY: 0.0\n", + " valueZ: 0.0\n", + " }\n", + " distanceToBoundary:\n", + " {\n", + " boundary:\n", + " {\n", + " id: \"\"\n", + " label: \"\"\n", + " }\n", + " distance:\n", + " {\n", + " unitCode: \"\"\n", + " value:\n", + " [\n", + " 0.0\n", + " 0\n", + " ]\n", + " }\n", + " }\n", + " layer:\n", + " {\n", + " id: \"\"\n", + " label: \"\"\n", + " }\n", + " longitudinalAxis:\n", + " [\n", + " Dorsal\n", + " Ventral\n", + " ]\n", + " positionInLayer:\n", + " [\n", + " Deep\n", + " Superficial\n", + " ]\n", + " }\n", + " contribution:\n", + " {\n", + " id: \"\"\n", + " }\n", + " distribution:\n", + " {\n", + " id: \"\"\n", + " type: DataDownload\n", + " contentSize:\n", + " {\n", + " unitCode: \"\"\n", + " value: \"\"\n", + " }\n", + " digest:\n", + " {\n", + " algorithm: \"\"\n", + " value: \"\"\n", + " }\n", + " encodingFormat: \"\"\n", + " license: \"\"\n", + " name: \"\"\n", + " }\n", + " objectOfStudy:\n", + " {\n", + " id: \"\"\n", + " type: ObjectOfStudy\n", + " }\n", + " releaseDate: 9999-12-31T00:00:00\n", + " subject:\n", + " {\n", + " id: \"\"\n", + " type: Subject\n", + " }\n", + "}\n" + ] + } + ], "source": [ "forge.template(\"Dataset\") # Templates help know which property to use when writing a query to serach for a given type" ] @@ -1191,7 +3226,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 234, "metadata": {}, "outputs": [], "source": [ @@ -1207,7 +3242,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 235, "metadata": {}, "outputs": [], "source": [ @@ -1216,36 +3251,131 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 236, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "list" + ] + }, + "execution_count": 236, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "type(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 237, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 237, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "len(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 238, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " id: https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/f0689ed3-29b4-4462-867c-73e53197ec37\n", + " contributor: t3661\n", + " name: Jane Doe\n", + "}\n" + ] + } + ], "source": [ "print(resources[0])" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 239, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
idcontributorname
0https://sandbox.bluebrainnexus.io/v1/resources...t3661Jane Doe
1https://sandbox.bluebrainnexus.io/v1/resources...t3662John Smith
2https://sandbox.bluebrainnexus.io/v1/resources...t1771John Smith
\n", + "
" + ], + "text/plain": [ + " id contributor name\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... t3661 Jane Doe\n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... t3662 John Smith\n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... t1771 John Smith" + ] + }, + "execution_count": 239, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_dataframe(resources)" ] @@ -1260,9 +3390,42 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 240, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Submitted query:\n", + " PREFIX dc: \n", + " PREFIX dcat: \n", + " PREFIX dcterms: \n", + " PREFIX mba: \n", + " PREFIX nsg: \n", + " PREFIX owl: \n", + " PREFIX prov: \n", + " PREFIX rdf: \n", + " PREFIX rdfs: \n", + " PREFIX schema: \n", + " PREFIX sh: \n", + " PREFIX shsh: \n", + " PREFIX skos: \n", + " PREFIX vann: \n", + " PREFIX void: \n", + " PREFIX xsd: \n", + " PREFIX : \n", + " \n", + " SELECT ?id ?name ?contributor\n", + " WHERE {\n", + " ?id a schema:Dataset ;\n", + " nsg:contribution/prov:agent ?contributor.\n", + " ?contributor schema:name ?name.\n", + " }\n", + " LIMIT 3\n" + ] + } + ], "source": [ "resources = forge.sparql(query, limit=3, debug=True)" ] @@ -1279,7 +3442,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 241, "metadata": {}, "outputs": [], "source": [ @@ -1315,9 +3478,44 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 242, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Submitted query:\n", + " \n", + " PREFIX dc: \n", + " PREFIX dcat: \n", + " PREFIX dcterms: \n", + " PREFIX mba: \n", + " PREFIX nsg: \n", + " PREFIX owl: \n", + " PREFIX prov: \n", + " PREFIX rdf: \n", + " PREFIX rdfs: \n", + " PREFIX schema: \n", + " PREFIX sh: \n", + " PREFIX shsh: \n", + " PREFIX skos: \n", + " PREFIX vann: \n", + " PREFIX void: \n", + " PREFIX xsd: \n", + " PREFIX : \n", + " SELECT ?id ?name\n", + " WHERE {\n", + " ?id a schema:Dataset ;\n", + " nsg:contribution/prov:agent ?contributor.\n", + " ?contributor schema:name ?name.\n", + " }\n", + " ORDER BY ?id\n", + " LIMIT 3\n", + " OFFSET 1\n" + ] + } + ], "source": [ "# it is recommended to set 'rewrite' to 'False' to prevent the sparql query rewriting when a syntactically correct SPARQL query is provided.\n", "resources = forge.sparql(query, rewrite=False, limit=3, offset=1, debug=True) " @@ -1325,36 +3523,126 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 243, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "list" + ] + }, + "execution_count": 243, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "type(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 244, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 244, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "len(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 245, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "kgforge.core.resource.Resource" + ] + }, + "execution_count": 245, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "type(resources[0])" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 246, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
idname
0https://sandbox.bluebrainnexus.io/v1/resources...Jane Doe
1https://sandbox.bluebrainnexus.io/v1/resources...John Smith
2https://sandbox.bluebrainnexus.io/v1/resources...Jane Doe
\n", + "
" + ], + "text/plain": [ + " id name\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... Jane Doe\n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... John Smith\n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... Jane Doe" + ] + }, + "execution_count": 246, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_dataframe(resources)" ] @@ -1377,7 +3665,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 247, "metadata": {}, "outputs": [], "source": [ @@ -1411,9 +3699,42 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 248, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Submitted query:\n", + " \n", + " PREFIX dc: \n", + " PREFIX dcat: \n", + " PREFIX dcterms: \n", + " PREFIX mba: \n", + " PREFIX nsg: \n", + " PREFIX owl: \n", + " PREFIX prov: \n", + " PREFIX rdf: \n", + " PREFIX rdfs: \n", + " PREFIX schema: \n", + " PREFIX sh: \n", + " PREFIX shsh: \n", + " PREFIX skos: \n", + " PREFIX vann: \n", + " PREFIX void: \n", + " PREFIX xsd: \n", + " PREFIX : \n", + " SELECT ?id ?name\n", + " WHERE {\n", + " ?id a schema:Dataset ;\n", + " nsg:contribution/prov:agent ?contributor.\n", + " ?contributor schema:name ?name.\n", + " }\n", + " ORDER BY ?id\n" + ] + } + ], "source": [ "\n", "resources = forge.sparql(query_without_limit, rewrite=False, limit=None, offset=None, debug=True)" @@ -1421,9 +3742,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 249, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "70" + ] + }, + "execution_count": 249, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "len(resources)" ] @@ -1438,7 +3770,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 250, "metadata": {}, "outputs": [], "source": [ @@ -1454,18 +3786,61 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 251, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Submitted query:\n", + " PREFIX dc: \n", + " PREFIX dcat: \n", + " PREFIX dcterms: \n", + " PREFIX mba: \n", + " PREFIX nsg: \n", + " PREFIX owl: \n", + " PREFIX prov: \n", + " PREFIX rdf: \n", + " PREFIX rdfs: \n", + " PREFIX schema: \n", + " PREFIX sh: \n", + " PREFIX shsh: \n", + " PREFIX skos: \n", + " PREFIX vann: \n", + " PREFIX void: \n", + " PREFIX xsd: \n", + " PREFIX : \n", + " \n", + " SELECT ?id ?name ?contributor\n", + " WHERE {\n", + " ?id a schema:Dataset ;\n", + " nsg:contribution/prov:agent ?contributor.\n", + " ?contributor schema:name ?name.\n", + " }\n" + ] + } + ], "source": [ "resources = forge.sparql(query_without_context, limit=None, debug=True)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 252, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "70" + ] + }, + "execution_count": 252, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "len(resources)" ] @@ -1490,7 +3865,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 253, "metadata": {}, "outputs": [], "source": [ @@ -1500,7 +3875,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 254, "metadata": {}, "outputs": [], "source": [ @@ -1510,7 +3885,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 255, "metadata": {}, "outputs": [], "source": [ @@ -1519,9 +3894,18 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 256, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _register_one\n", + " True\n" + ] + } + ], "source": [ "forge.register(association)" ] @@ -1536,7 +3920,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 257, "metadata": {}, "outputs": [], "source": [ @@ -1559,7 +3943,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 258, "metadata": {}, "outputs": [], "source": [ @@ -1569,36 +3953,126 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 259, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "list" + ] + }, + "execution_count": 259, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "type(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 260, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 260, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "len(resources)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 261, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "kgforge.core.resource.Resource" + ] + }, + "execution_count": 261, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "type(resources[0])" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 262, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
idname
0https://bbp.epfl.ch/neurosciencegraph/data/neu...AA1543
1https://bbp.epfl.ch/neurosciencegraph/data/neu...AA1542
2https://bbp.epfl.ch/neurosciencegraph/data/neu...AA1544
\n", + "
" + ], + "text/plain": [ + " id name\n", + "0 https://bbp.epfl.ch/neurosciencegraph/data/neu... AA1543\n", + "1 https://bbp.epfl.ch/neurosciencegraph/data/neu... AA1542\n", + "2 https://bbp.epfl.ch/neurosciencegraph/data/neu... AA1544" + ] + }, + "execution_count": 262, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "forge.as_dataframe(resources)" ] @@ -1621,7 +4095,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 263, "metadata": {}, "outputs": [], "source": [ @@ -1630,16 +4104,29 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 264, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "associations.tsv\n", + "my_data.xwz\n", + "my_data_derived.txt\n", + "persons-with-id.csv\n", + "persons.csv\n", + "tfidfvectorizer_model_schemaorg_linking\n" + ] + } + ], "source": [ "! ls -p ../../data | egrep -v /$" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 265, "metadata": {}, "outputs": [], "source": [ @@ -1648,7 +4135,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 266, "metadata": {}, "outputs": [], "source": [ @@ -1657,16 +4144,25 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 267, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _register_one\n", + " True\n" + ] + } + ], "source": [ "forge.register(association)" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 268, "metadata": {}, "outputs": [], "source": [ @@ -1681,7 +4177,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 269, "metadata": {}, "outputs": [], "source": [ @@ -1691,7 +4187,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 270, "metadata": {}, "outputs": [], "source": [ @@ -1702,16 +4198,78 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 271, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "total 3632\n", + "-rw-r--r--@ 1 mouffok 10067 477 Oct 20 10:54 associations.tsv\n", + "-rw-r--r--@ 1 mouffok 10067 477 Nov 23 15:10 associations.tsv.20231123151033\n", + "-rw-r--r--@ 1 mouffok 10067 477 Nov 23 15:10 associations.tsv.20231123151035\n", + "-rw-r--r-- 1 mouffok 10067 477 Nov 23 15:41 associations.tsv.20231123154107\n", + "-rw-r--r--@ 1 mouffok 10067 477 Nov 27 14:20 associations.tsv.20231127142049\n", + "-rw-r--r--@ 1 mouffok 10067 477 Nov 27 14:20 associations.tsv.20231127142050\n", + "-rw-r--r--@ 1 mouffok 10067 477 Nov 27 14:24 associations.tsv.20231127142458\n", + "-rw-r--r--@ 1 mouffok 10067 477 Dec 5 15:37 associations.tsv.20231205153754\n", + "-rw-r--r--@ 1 mouffok 10067 477 Dec 5 15:44 associations.tsv.20231205154444\n", + "-rw-r--r-- 1 mouffok 10067 477 Feb 1 18:40 associations.tsv.20240201184048\n", + "-rw-r--r-- 1 mouffok 10067 477 Feb 2 10:47 associations.tsv.20240202104741\n", + "-rw-r--r-- 1 mouffok 10067 477 Feb 2 10:59 associations.tsv.20240202105941\n", + "-rw-r--r--@ 1 mouffok 10067 16 Oct 20 10:54 my_data.xwz\n", + "-rw-r--r-- 1 mouffok 10067 16 Nov 23 15:41 my_data.xwz.20231123154107\n", + "-rw-r--r--@ 1 mouffok 10067 16 Nov 27 14:24 my_data.xwz.20231127142458\n", + "-rw-r--r--@ 1 mouffok 10067 16 Dec 5 15:37 my_data.xwz.20231205153754\n", + "-rw-r--r--@ 1 mouffok 10067 16 Dec 5 15:44 my_data.xwz.20231205154444\n", + "-rw-r--r-- 1 mouffok 10067 16 Feb 1 18:40 my_data.xwz.20240201184048\n", + "-rw-r--r-- 1 mouffok 10067 16 Feb 2 10:47 my_data.xwz.20240202104741\n", + "-rw-r--r-- 1 mouffok 10067 16 Feb 2 10:59 my_data.xwz.20240202105941\n", + "-rw-r--r--@ 1 mouffok 10067 24 Oct 20 10:54 my_data_derived.txt\n", + "-rw-r--r-- 1 mouffok 10067 24 Nov 23 15:41 my_data_derived.txt.20231123154107\n", + "-rw-r--r--@ 1 mouffok 10067 24 Nov 27 14:24 my_data_derived.txt.20231127142458\n", + "-rw-r--r--@ 1 mouffok 10067 24 Dec 5 15:37 my_data_derived.txt.20231205153754\n", + "-rw-r--r--@ 1 mouffok 10067 24 Dec 5 15:44 my_data_derived.txt.20231205154444\n", + "-rw-r--r-- 1 mouffok 10067 24 Feb 1 18:40 my_data_derived.txt.20240201184048\n", + "-rw-r--r-- 1 mouffok 10067 24 Feb 2 10:47 my_data_derived.txt.20240202104741\n", + "-rw-r--r-- 1 mouffok 10067 24 Feb 2 10:59 my_data_derived.txt.20240202105941\n", + "-rw-r--r--@ 1 mouffok 10067 126 Oct 20 10:54 persons-with-id.csv\n", + "-rw-r--r-- 1 mouffok 10067 126 Nov 23 15:41 persons-with-id.csv.20231123154107\n", + "-rw-r--r--@ 1 mouffok 10067 126 Nov 27 14:24 persons-with-id.csv.20231127142458\n", + "-rw-r--r--@ 1 mouffok 10067 126 Dec 5 15:37 persons-with-id.csv.20231205153754\n", + "-rw-r--r--@ 1 mouffok 10067 126 Dec 5 15:44 persons-with-id.csv.20231205154444\n", + "-rw-r--r-- 1 mouffok 10067 126 Feb 1 18:40 persons-with-id.csv.20240201184048\n", + "-rw-r--r-- 1 mouffok 10067 126 Feb 2 10:47 persons-with-id.csv.20240202104741\n", + "-rw-r--r-- 1 mouffok 10067 126 Feb 2 10:59 persons-with-id.csv.20240202105941\n", + "-rw-r--r--@ 1 mouffok 10067 52 Oct 20 10:54 persons.csv\n", + "-rw-r--r--@ 1 mouffok 10067 52 Nov 23 15:10 persons.csv.20231123151035\n", + "-rw-r--r-- 1 mouffok 10067 52 Nov 23 15:41 persons.csv.20231123154107\n", + "-rw-r--r--@ 1 mouffok 10067 52 Nov 27 14:20 persons.csv.20231127142050\n", + "-rw-r--r--@ 1 mouffok 10067 52 Nov 27 14:24 persons.csv.20231127142458\n", + "-rw-r--r--@ 1 mouffok 10067 52 Dec 5 15:37 persons.csv.20231205153754\n", + "-rw-r--r--@ 1 mouffok 10067 52 Dec 5 15:44 persons.csv.20231205154444\n", + "-rw-r--r-- 1 mouffok 10067 52 Feb 1 18:40 persons.csv.20240201184048\n", + "-rw-r--r-- 1 mouffok 10067 52 Feb 2 10:47 persons.csv.20240202104741\n", + "-rw-r--r-- 1 mouffok 10067 52 Feb 2 10:59 persons.csv.20240202105941\n", + "-rw-r--r--@ 1 mouffok 10067 204848 Oct 20 10:54 tfidfvectorizer_model_schemaorg_linking\n", + "-rw-r--r-- 1 mouffok 10067 204848 Nov 23 15:41 tfidfvectorizer_model_schemaorg_linking.20231123154107\n", + "-rw-r--r--@ 1 mouffok 10067 204848 Nov 27 14:24 tfidfvectorizer_model_schemaorg_linking.20231127142458\n", + "-rw-r--r--@ 1 mouffok 10067 204848 Dec 5 15:37 tfidfvectorizer_model_schemaorg_linking.20231205153754\n", + "-rw-r--r--@ 1 mouffok 10067 204848 Dec 5 15:44 tfidfvectorizer_model_schemaorg_linking.20231205154444\n", + "-rw-r--r-- 1 mouffok 10067 204848 Feb 1 18:40 tfidfvectorizer_model_schemaorg_linking.20240201184048\n", + "-rw-r--r-- 1 mouffok 10067 204848 Feb 2 10:47 tfidfvectorizer_model_schemaorg_linking.20240202104741\n", + "-rw-r--r-- 1 mouffok 10067 204848 Feb 2 10:59 tfidfvectorizer_model_schemaorg_linking.20240202105941\n" + ] + } + ], "source": [ "! ls -l ./downloaded/" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 272, "metadata": {}, "outputs": [], "source": [ @@ -1721,9 +4279,9 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3 (ipykernel)", + "display_name": "forge_venv", "language": "python", - "name": "python3" + "name": "venv" }, "language_info": { "codemirror_mode": { diff --git a/kgforge/core/archetypes/dataset_store.py b/kgforge/core/archetypes/dataset_store.py index 88ac44c7e..f2793536b 100644 --- a/kgforge/core/archetypes/dataset_store.py +++ b/kgforge/core/archetypes/dataset_store.py @@ -12,7 +12,7 @@ # You should have received a copy of the GNU Lesser General Public License # along with Blue Brain Nexus Forge. If not, see . -from abc import abstractmethod, ABC +from abc import abstractmethod from typing import Optional, Union, List, Type, Dict from kgforge.core.archetypes.model import Model @@ -27,7 +27,7 @@ class DatasetStore(ReadOnlyStore): - """A class to link to external databases, query and search directly on datasets. """ + """A class to link to external databases, query and search directly on datasets.""" def __init__(self, model: Optional[Model] = None) -> None: super().__init__(model) @@ -38,10 +38,12 @@ def mapper(self) -> Type[Mapper]: """Mapper class to map a Resource to the store metadata format.""" ... - def map(self, resources: Union[List[Union[Resource, str]], Union[Resource, str]], - type_: Optional[Union[str, Mapping]] = None, - ) -> Optional[Union[Resource, List[Resource]]]: - """ Use mappings to transform resources from and to the store model + def map( + self, + resources: Union[List[Union[Resource, str]], Union[Resource, str]], + type_: Optional[Union[str, Mapping]] = None, + ) -> Optional[Union[Resource, List[Resource]]]: + """Use mappings to transform resources from and to the store model :param resources: data to be transformed :param type_: type (schema) of the data @@ -49,13 +51,17 @@ def map(self, resources: Union[List[Union[Resource, str]], Union[Resource, str]] mappings = self.model.mappings(self.model.source, False) mapper = self.mapper() mapped_resources = [] - resources = (resources if isinstance(resources, list) else [resources]) + resources = resources if isinstance(resources, list) else [resources] for resource in resources: if isinstance(resource, Resource): - resource_dict = as_json(resource, expanded=False, store_metadata=False, - model_context=self.model_context(), - metadata_context=None, - context_resolver=self.model.resolve_context) + resource_dict = as_json( + resource, + expanded=False, + store_metadata=False, + model_context=self.model_context(), + metadata_context=None, + context_resolver=self.model.resolve_context, + ) else: resource_dict = resource resource = from_json(resource_dict, None) @@ -68,7 +74,9 @@ def map(self, resources: Union[List[Union[Resource, str]], Union[Resource, str]] mapped_resources.append(mapper.map(resource_dict, type_)) elif type_ in mappings: # type_ is the entity here - mapping_class: Type[Mapping] = import_class(mappings[type_][0], "mappings") + mapping_class: Type[Mapping] = import_class( + mappings[type_][0], "mappings" + ) mapping = self.model.mapping(type_, self.model.source, mapping_class) mapped_resources.append(mapper.map(resource_dict, mapping)) else: @@ -81,16 +89,17 @@ def types(self) -> Optional[List[str]]: return list(self.model.mappings(self.model.source, False).keys()) def search( - self, resolvers: Optional[List[Resolver]], - filters: List[Union[Dict, Filter]], - **params + self, + *filters: Union[Dict, Filter], + resolvers: Optional[List[Resolver]] = None, + **params ) -> Optional[List[Resource]]: - """Search within the database. - :param map: bool + """ + Search within the database. """ unmapped_resources = self._search(resolvers, filters, **params) - if not params.pop('map', True): + if not params.pop("map", True): return unmapped_resources # Try to find the type of the resources within the filters resource_type = type_from_filters(filters) @@ -98,23 +107,26 @@ def search( @abstractmethod def _search( - self, filters: List[Union[Dict, Filter]], resolvers: Optional[List[Resolver]] = None, - **params - ) -> Optional[List[Resource]]: - ... + self, + filters: List[Union[Dict, Filter]], + resolvers: Optional[List[Resolver]] = None, + **params + ) -> Optional[List[Resource]]: ... def sparql( - self, query: str, debug: bool = False, limit: Optional[int] = None, - offset: Optional[int] = None, **params + self, + query: str, + debug: bool = False, + limit: Optional[int] = None, + offset: Optional[int] = None, + **params ) -> Optional[Union[List[Resource], Resource]]: - """Use SPARQL within the database. - :param map: bool """ - unmapped_resources = super().sparql( - query, debug, limit, offset, **params - ) + Use SPARQL within the database. + """ + unmapped_resources = super().sparql(query, debug, limit, offset, **params) - if not params.pop('map', True): + if not params.pop("map", True): return unmapped_resources return self.map(unmapped_resources) @@ -127,10 +139,10 @@ def type_from_filters(filters: List[Union[Filter, Dict]]) -> Optional[str]: for f in filters: if isinstance(f, dict): - if 'type' in f: - return f['type'] + if "type" in f: + return f["type"] elif isinstance(f, Filter): - if 'type' in f.path and f.operator == "__eq__": + if "type" in f.path and f.operator == "__eq__": return f.value else: raise ValueError("Invalid filter type: Can only be a Dict or Filter") diff --git a/kgforge/core/archetypes/read_only_store.py b/kgforge/core/archetypes/read_only_store.py index 909c37c61..a0b4053e8 100644 --- a/kgforge/core/archetypes/read_only_store.py +++ b/kgforge/core/archetypes/read_only_store.py @@ -182,7 +182,7 @@ def _download_one( @abstractmethod def search( - self, resolvers: Optional[List[Resolver]], filters: List[Union[Dict, Filter]], **params + self, resolvers: Optional[List[Resolver]], *filters: Union[Dict, Filter], **params ) -> List[Resource]: # Positional arguments in 'filters' are instances of type Filter from wrappings/paths.py @@ -238,10 +238,10 @@ def sparql( if debug: SPARQLQueryBuilder.debug_query(qr) - return self._sparql(qr) + return self._sparql(qr, view=params.get("view", None)) @abstractmethod - def _sparql(self, query: str) -> Optional[Union[List[Resource], Resource]]: + def _sparql(self, query: str, view: Optional[str]) -> Optional[Union[List[Resource], Resource]]: # POLICY Should notify of failures with exception QueryingError including a message. # POLICY Resource _store_metadata should not be set (default is None). # POLICY Resource _synchronized should not be set (default is False). diff --git a/kgforge/core/archetypes/store.py b/kgforge/core/archetypes/store.py index ba52925d8..5898b2134 100644 --- a/kgforge/core/archetypes/store.py +++ b/kgforge/core/archetypes/store.py @@ -242,7 +242,8 @@ def _deprecate_one(self, resource: Resource) -> None: # Querying def elastic( - self, query: str, debug: bool, limit: int = DEFAULT_LIMIT, offset: int = DEFAULT_OFFSET + self, query: str, debug: bool, limit: int = DEFAULT_LIMIT, offset: int = DEFAULT_OFFSET, + **params ) -> List[Resource]: query_dict = json.loads(query) @@ -255,10 +256,10 @@ def elastic( if debug: ESQueryBuilder.debug_query(query_dict) - return self._elastic(json.dumps(query_dict)) + return self._elastic(json.dumps(query_dict), view=params.get("view", None)) @abstractmethod - def _elastic(self, query: str) -> Optional[Union[List[Resource], Resource]]: + def _elastic(self, query: str, view: Optional[str]) -> Optional[Union[List[Resource], Resource]]: # POLICY Should notify of failures with exception QueryingError including a message. # POLICY Resource _store_metadata should not be set (default is None). # POLICY Resource _synchronized should not be set (default is False). diff --git a/kgforge/core/commons/es_query_builder.py b/kgforge/core/commons/es_query_builder.py index cb23fc196..fb40e8bf8 100644 --- a/kgforge/core/commons/es_query_builder.py +++ b/kgforge/core/commons/es_query_builder.py @@ -37,7 +37,7 @@ class ESQueryBuilder(QueryBuilder): @staticmethod def build( - schema: Dict, + schema: Optional[Dict], resolvers: Optional[List["Resolver"]], context: Context, filters: List[Filter], diff --git a/kgforge/core/commons/query_builder.py b/kgforge/core/commons/query_builder.py index 0502949e6..daf66661f 100644 --- a/kgforge/core/commons/query_builder.py +++ b/kgforge/core/commons/query_builder.py @@ -28,7 +28,7 @@ def __repr__(self) -> str: @staticmethod @abstractmethod def build( - schema: Any, + schema: Optional[Dict], resolvers: Optional[List["Resolver"]], context: Context, filters: List[Filter], diff --git a/kgforge/core/commons/sparql_query_builder.py b/kgforge/core/commons/sparql_query_builder.py index e8ea684ba..5c2c859ea 100644 --- a/kgforge/core/commons/sparql_query_builder.py +++ b/kgforge/core/commons/sparql_query_builder.py @@ -120,7 +120,7 @@ class SPARQLQueryBuilder(QueryBuilder): @staticmethod def build( - schema: Dict, + schema: Optional[Dict], resolvers: Optional[List[Resolver]], context: Context, filters: List[Filter], diff --git a/kgforge/core/forge.py b/kgforge/core/forge.py index 41f352a5b..7b56913da 100644 --- a/kgforge/core/forge.py +++ b/kgforge/core/forge.py @@ -239,12 +239,12 @@ def __init__(self, configuration: Union[str, Dict], **kwargs) -> None: if store_model_name != model_name: # Same model, different config store_model = import_class(store_model_name, "models") - store_config['model'] = store_model(**store_model_config) + store_config["model"] = store_model(**store_model_config) else: # Same model, same config - store_config['model'] = self._model + store_config["model"] = self._model else: - raise ValueError(f'Missing model configuration for store {store_name}') + raise ValueError(f"Missing model configuration for store {store_name}") store = import_class(store_name, "stores") self._store: Store = store(**store_config) store_config.update(name=store_name) @@ -263,7 +263,9 @@ def __init__(self, configuration: Union[str, Dict], **kwargs) -> None: # Datasets dataset_config = config.pop("Datasets", None) - self._dataset_sources: Optional[Dict[str, DatasetStore]] = self.create_datasets(dataset_config, store_config) + self._dataset_sources: Optional[Dict[str, DatasetStore]] = self.create_datasets( + dataset_config, store_config + ) @catch def prefixes(self, pretty: bool = True) -> Optional[Dict[str, str]]: @@ -322,7 +324,7 @@ def validate( self, data: Union[Resource, List[Resource]], execute_actions_before: bool = False, - type_: str = None + type_: str = None, ) -> None: """ Check if resources conform to their corresponding schemas. This method will try to infer the schema of a resource from its type. @@ -476,7 +478,7 @@ def resolve( merge_inplace_as, limit, threshold, - self + self, ) else: raise ResolvingError("no resolvers have been configured") @@ -484,7 +486,14 @@ def resolve( # Formatting User Interface. @catch - def format(self, what: str = None, *args, formatter: Union[Formatter, str] = Formatter.STR, uri: str = None, **kwargs) -> str: + def format( + self, + what: str = None, + *args, + formatter: Union[Formatter, str] = Formatter.STR, + uri: str = None, + **kwargs, + ) -> str: """ Select a configured formatter (see https://nexus-forge.readthedocs.io/en/latest/interaction.html#formatting) string (identified by 'what') and format it using provided '*args' :param what: a configured str format name. Required formatter:str = Formatter.STR @@ -501,9 +510,7 @@ def format(self, what: str = None, *args, formatter: Union[Formatter, str] = For try: formatter = ( - formatter - if isinstance(formatter, Formatter) - else Formatter[formatter] + formatter if isinstance(formatter, Formatter) else Formatter[formatter] ) except Exception as e: raise AttributeError( @@ -553,15 +560,13 @@ def mappings( :return: Optional[Dict[str, List[str]]] """ if source in self._dataset_sources: - ds = self._dataset_sources[source] + ds = self._dataset_sources[source] return ds._model.mappings(ds._model.source, pretty) else: return self._model.mappings(source, pretty) @catch - def mapping( - self, entity: str, source: str, type: Type[Mapping] = None - ) -> Mapping: + def mapping(self, entity: str, source: str, type: Type[Mapping] = None) -> Mapping: """ Return a Mapping object of type 'type' for a resource type 'entity' and a source. @@ -573,7 +578,7 @@ def mapping( if type is None: type = self._store.mapping if source in self._dataset_sources: - ds = self._dataset_sources[source] + ds = self._dataset_sources[source] return ds._model.mapping(entity, ds._model.source, type) else: return self._model.mapping(entity, source, type) @@ -629,7 +634,7 @@ def retrieve( id: str, version: Optional[Union[int, str]] = None, cross_bucket: bool = False, - **params + **params, ) -> Resource: """ Retrieve a resource by its identifier from the configured store and possibly at a given version. @@ -640,7 +645,9 @@ def retrieve( :param params: a dictionary of parameters. :return: Resource """ - return self._store.retrieve(id_=id, version=version, cross_bucket=cross_bucket, **params) + return self._store.retrieve( + id_=id, version=version, cross_bucket=cross_bucket, **params + ) @catch def paths(self, type: str) -> PathsWrapper: @@ -663,15 +670,18 @@ def search(self, *filters: Union[Dict, Filter], **params) -> List[Resource]: :param params: a dictionary of parameters :return: List[Resource] """ + resolvers = ( list(self._resolvers.values()) if self._resolvers is not None else None ) - dataset = params.pop('source', None) + dataset = params.pop("source", None) if dataset: if dataset in self._dataset_sources: - return self._dataset_sources[dataset].search(resolvers, *filters, **params) + return self._dataset_sources[dataset].search( + resolvers, *filters, **params + ) else: - raise AttributeError('Selected database was not declared within forge.') + raise AttributeError("Selected database was not declared within forge.") return self._store.search(resolvers, *filters, **params) @catch @@ -681,7 +691,7 @@ def sparql( debug: bool = False, limit: Optional[int] = None, offset: Optional[int] = None, - **params + **params, ) -> List[Resource]: """ Search for resources using a SPARQL query. See SPARQL docs: https://www.w3.org/TR/sparql11-query. @@ -693,12 +703,14 @@ def sparql( :param params: a dictionary of parameters. Supported params are: rewrite (whether to rewrite the sparql query or run it as is) :return: List[Resource] """ - dataset = params.pop('source', None) + dataset = params.pop("source", None) if dataset: if dataset in self._dataset_sources: - return self._dataset_sources[dataset].sparql(query, debug, limit, offset, **params) + return self._dataset_sources[dataset].sparql( + query, debug, limit, offset, **params + ) else: - raise AttributeError('Selected database was not declared within forge.') + raise AttributeError("Selected database was not declared within forge.") return self._store.sparql(query, debug, limit, offset, **params) @catch @@ -709,6 +721,7 @@ def elastic( limit: Optional[int] = None, offset: Optional[int] = None, source: Optional[str] = None, + **params, ) -> List[Resource]: """ Search for resources using an ElasticSearch DSL query. See ElasticSearch DSL docs: https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl.html. @@ -721,10 +734,12 @@ def elastic( """ if source: if source in self._dataset_sources: - return self._dataset_sources[source].elastic(query, debug, limit, offset) + return self._dataset_sources[source].elastic( + query, debug, limit, offset + ) else: - raise AttributeError('Selected database was not declared within forge.') - return self._store.elastic(query, debug, limit, offset) + raise AttributeError("Selected database was not declared within forge.") + return self._store.elastic(query, debug, limit, offset, **params) @catch def download( @@ -735,7 +750,7 @@ def download( overwrite: bool = False, cross_bucket: bool = False, content_type: str = None, - source: Optional[str] = None + source: Optional[str] = None, ) -> None: """ Download files attached to a resource or a list of resources. @@ -750,11 +765,11 @@ def download( # path: DirPath. if source: if source in self._dataset_sources: - return self._dataset_sources[source].download(data, follow, path, - overwrite, cross_bucket, - content_type) + return self._dataset_sources[source].download( + data, follow, path, overwrite, cross_bucket, content_type + ) else: - raise AttributeError('Selected database was not declared within forge.') + raise AttributeError("Selected database was not declared within forge.") self._store.download(data, follow, path, overwrite, cross_bucket, content_type) # Storing User Interface. @@ -862,7 +877,7 @@ def as_jsonld( data: Union[Resource, List[Resource]], form: str = Form.COMPACTED.value, store_metadata: bool = False, - **params + **params, ) -> Union[Dict, List[Dict]]: """ Convert a resource or a list of resources to JSON-LD. @@ -880,7 +895,7 @@ def as_jsonld( self._model.context(), self._store.metadata_context, self._model.resolve_context, - **params + **params, ) @catch @@ -1001,8 +1016,9 @@ def get_model_context(self): return self._model.context() @catch - def dataset_sources(self, type_: Optional[List[str]] = None, - pretty: bool = False) -> Optional[List[str]]: + def dataset_sources( + self, type_: Optional[List[str]] = None, pretty: bool = False + ) -> Optional[List[str]]: """ Print(pretty=True) or return (pretty=False) configured data sources. :param pretty: a boolean @@ -1028,7 +1044,7 @@ def dataset_sources(self, type_: Optional[List[str]] = None, if type_ in types: sources[ds] = dstypes except ValueError: - # skiping db without mappings + # skiping db without mappings continue if not sources: print("No Database sources were found for the given type(s)") @@ -1043,25 +1059,29 @@ def add_dataset_source(self, dataset: DatasetStore) -> None: """ self._dataset_sources[dataset.name] = dataset - def create_datasets(self, all_config: Optional[Dict[str, Dict[str, str]]], - store_config : Optional[Dict[str, Dict[str, str]]], - ) -> Dict[str, DatasetStore]: + def create_datasets( + self, + all_config: Optional[Dict[str, Dict[str, str]]], + store_config: Optional[Dict[str, Dict[str, str]]], + ) -> Dict[str, DatasetStore]: ds = {} for name, config in all_config.items(): - origin = config['origin'] - source = config['source'] + origin = config["origin"] + source = config["source"] # Reuse complete configuration of the store when Nexus is called - if source == store_config['name'] == 'BlueBrainNexus': + if source == store_config["name"] == "BlueBrainNexus": store_copy = deepcopy(store_config) - with_defaults(config, store_copy, - "source", "name", - list(store_copy.keys())) + with_defaults( + config, store_copy, "source", "name", list(store_copy.keys()) + ) else: try: dataset = import_class(name, "stores") ds[name]: DatasetStore = dataset(**config) except Exception: - raise NotImplementedError(f'Dataset from {origin} is not yet implemented.') + raise NotImplementedError( + f"Dataset from {origin} is not yet implemented." + ) return ds @@ -1081,14 +1101,7 @@ def prepare_resolver(config: Dict, store_config: Dict) -> Tuple[str, Resolver]: store_config, "source", "name", - [ - "endpoint", - "token", - "bucket", - "model", - "searchendpoints", - "vocabulary", - ], + ["endpoint", "token", "bucket", "model", "searchendpoints", "vocabulary"], ) resolver_name = config.pop("resolver") resolver = import_class(resolver_name, "resolvers") diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index d1bddd05d..8c231850e 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -18,9 +18,7 @@ import json import mimetypes import re -from datetime import datetime from asyncio import Semaphore, Task -from enum import Enum from pathlib import Path from typing import Any, Dict, List, Optional, Tuple, Union, Type @@ -34,9 +32,9 @@ from kgforge.core.commons.dictionaries import update_dict from kgforge.core.commons.es_query_builder import ESQueryBuilder -from kgforge.core.commons.sparql_query_builder import SPARQLQueryBuilder +from kgforge.core.commons.sparql_query_builder import SPARQLQueryBuilder, format_type, \ + CategoryDataType from kgforge.core.resource import Resource -from kgforge.core.archetypes.model import Model from kgforge.core.archetypes.store import Store from kgforge.core.archetypes.mapping import Mapping from kgforge.core.archetypes.mapper import Mapper @@ -64,46 +62,6 @@ from kgforge.specializations.stores.nexus.service import BatchAction, Service, _error_message -class CategoryDataType(Enum): - DATETIME = "datetime" - NUMBER = "number" - BOOLEAN = "boolean" - LITERAL = "literal" - - -type_map = { - datetime: CategoryDataType.DATETIME, - str: CategoryDataType.LITERAL, - bool: CategoryDataType.BOOLEAN, - int: CategoryDataType.NUMBER, - float: CategoryDataType.NUMBER, - complex: CategoryDataType.NUMBER, -} - -format_type = { - CategoryDataType.DATETIME: lambda x: f'"{x}"^^xsd:dateTime', - CategoryDataType.NUMBER: lambda x: x, - CategoryDataType.LITERAL: lambda x: f'"{x}"', - CategoryDataType.BOOLEAN: lambda x: "'true'^^xsd:boolean" if x else "'false'^^xsd:boolean", -} - -sparql_operator_map = { - "__lt__": "<", - "__le__": "<=", - "__eq__": "=", - "__ne__": "!=", - "__gt__": ">", - "__ge__": ">=", -} - -elasticsearch_operator_map = { - "__lt__": "lt", - "__le__": "lte", - "__gt__": "gt", - "__ge__": "gte", -} - - def catch_http_error_nexus( r: requests.Response, e: Type[BaseException], error_message_formatter=_error_message ): @@ -111,27 +69,6 @@ def catch_http_error_nexus( class BlueBrainNexus(Store): - def __init__( - self, - model: Optional[Model] = None, - endpoint: Optional[str] = None, - bucket: Optional[str] = None, - token: Optional[str] = None, - versioned_id_template: Optional[str] = None, - file_resource_mapping: Optional[str] = None, - searchendpoints: Optional[Dict] = None, - **store_config, - ) -> None: - super().__init__( - model, - endpoint, - bucket, - token, - versioned_id_template, - file_resource_mapping, - searchendpoints, - **store_config, - ) @property def context(self) -> Optional[Context]: @@ -303,7 +240,7 @@ def _upload_one(self, path: Path, content_type: str) -> Dict: # C[R]UD. def retrieve( - self, id_: str, version: Optional[Union[int, str]], cross_bucket: bool, **params + self, id_: str, version: Optional[Union[int, str]], cross_bucket: bool = False, **params ) -> Optional[Resource]: """ Retrieve a resource by its identifier from the configured store and possibly at a given version. @@ -686,10 +623,15 @@ def _deprecate_one(self, resource: Resource) -> None: # Querying. def search( - self, filters: List[Union[Dict, Filter]], resolvers: Optional[List[Resolver]], + self, *filters: Union[Dict, Filter], resolvers: Optional[List[Resolver]], **params ) -> List[Resource]: + if "filters" in params: + raise ValueError( + "A 'filters' key was provided as params. Filters should be provided as iterable." + ) + if self.model_context() is None: raise ValueError("context model missing") @@ -704,19 +646,16 @@ def search( includes = params.get("includes", None) excludes = params.get("excludes", None) search_endpoint = params.get( - "search_endpoint", self.service.sparql_endpoint["type"] + "search_endpoint", Service.SPARQL_ENDPOINT_TYPE # default search endpoint is sparql ) - if search_endpoint not in [ - self.service.sparql_endpoint["type"], - self.service.elastic_endpoint["type"], - ]: - raise ValueError( - f"The provided search_endpoint value '{search_endpoint}' is not supported. Supported " - f"search_endpoint values are: '{self.service.sparql_endpoint['type'], self.service.elastic_endpoint['type']}'" - ) - if "filters" in params: + valid_endpoints = [ + Service.SPARQL_ENDPOINT_TYPE, Service.ELASTIC_ENDPOINT_TYPE, + ] + + if search_endpoint not in valid_endpoints: raise ValueError( - "A 'filters' key was provided as params. Filters should be provided as iterable." + f"The provided search_endpoint value '{search_endpoint}' is not supported. " + f"Supported search_endpoint values are: {valid_endpoints}" ) if bucket and not cross_bucket: @@ -731,7 +670,7 @@ def search( else: filters = list(filters) - if search_endpoint == self.service.sparql_endpoint["type"]: + if search_endpoint == Service.SPARQL_ENDPOINT_TYPE: if includes or excludes: raise ValueError( "Field inclusion and exclusion are not supported when using SPARQL" @@ -772,7 +711,9 @@ def search( search_in_graph ) # support @id and @type - resources = self.sparql(query, debug=debug, limit=limit, offset=offset) + resources = self.sparql( + query, debug=debug, limit=limit, offset=offset, view=params.get("view", None) + ) params_retrieve = copy.deepcopy(self.service.params.get("retrieve", {})) params_retrieve['retrieve_source'] = retrieve_source results = self.service.batch_request( @@ -807,15 +748,11 @@ def search( return resources else: if isinstance(self.service.elastic_endpoint["view"], LazyAction): - self.service.elastic_endpoint["view"] = self.service.elastic_endpoint[ - "view" - ].execute() - - elastic_mapping = ( - self.service.elastic_endpoint["view"]["mapping"] - if "mapping" in self.service.elastic_endpoint["view"] - else None - ) + self.service.elastic_endpoint["view"] = \ + self.service.elastic_endpoint["view"].execute() + + elastic_mapping = self.service.elastic_endpoint["view"].get("mapping", None) + default_str_keyword_field = self.service.elastic_endpoint[ "default_str_keyword_field" ] @@ -868,7 +805,8 @@ def search( ) return self.elastic( - json.dumps(query), debug=debug, limit=limit, offset=offset + json.dumps(query), debug=debug, limit=limit, offset=offset, + view=params.get("view", None) ) @staticmethod # for testing @@ -887,10 +825,14 @@ def reformat_contexts(model_context: Context, metadata_context: Optional[Context def get_context_prefix_vocab(self) -> Tuple[Optional[Dict], Optional[Dict], Optional[str]]: return BlueBrainNexus.reformat_contexts(self.model_context(), self.service.metadata_context) - def _sparql(self, query: str) -> List[Resource]: + def _sparql(self, query: str, view: str) -> List[Resource]: + + endpoint = self.service.sparql_endpoint["endpoint"] \ + if view is None \ + else self.service.make_endpoint(view, endpoint_type="sparql") response = requests.post( - self.service.sparql_endpoint["endpoint"], + endpoint, data=query, headers=self.service.headers_sparql, ) @@ -901,10 +843,14 @@ def _sparql(self, query: str) -> List[Resource]: context = self.model_context() or self.context return SPARQLQueryBuilder.build_resource_from_response(query, data, context) - def _elastic(self, query: str) -> List[Resource]: + def _elastic(self, query: str, view: Optional[str]) -> List[Resource]: + + endpoint = self.service.elastic_endpoint["endpoint"] \ + if view is None \ + else self.service.make_endpoint(view, endpoint_type="elastic") response = requests.post( - self.service.elastic_endpoint["endpoint"], + endpoint, data=query, headers=self.service.headers_elastic, ) diff --git a/kgforge/specializations/stores/demo_store.py b/kgforge/specializations/stores/demo_store.py index 5daad16b2..e03005b3c 100644 --- a/kgforge/specializations/stores/demo_store.py +++ b/kgforge/specializations/stores/demo_store.py @@ -82,8 +82,10 @@ def _register_one(self, resource: Resource, schema_id: str) -> None: # C[R]UD. - def retrieve(self, id_: str, version: Optional[Union[int, str]], - cross_bucket: bool, **params) -> Optional[Resource]: + def retrieve( + self, id_: str, version: Optional[Union[int, str]], + cross_bucket: bool = False, **params + ) -> Optional[Resource]: if cross_bucket: raise not_supported(("cross_bucket", True)) try: @@ -137,7 +139,7 @@ def _deprecate_one(self, resource: Resource) -> None: # Querying. def search( - self, filters: List[Union[Dict, Filter]], resolvers: Optional[List[Resolver]], **params + self, *filters: Union[Dict, Filter], resolvers: Optional[List[Resolver]], **params ) -> List[Resource]: cross_bucket = params.get("cross_bucket", None) @@ -156,11 +158,11 @@ def search( records = self.service.find(conditions) return [_to_resource(x) for x in records] - def _sparql(self, query: str) -> Optional[Union[List[Resource], Resource]]: - not_supported() + def _sparql(self, query: str, endpoint: str) -> Optional[Union[List[Resource], Resource]]: + raise not_supported() - def _elastic(self, query: str) -> Optional[Union[List[Resource], Resource]]: - not_supported() + def _elastic(self, query: str, endpoint: str) -> Optional[Union[List[Resource], Resource]]: + raise not_supported() # Utils. @@ -196,10 +198,10 @@ def _tag_many(self, resources: List[Resource], value: str) -> None: def _deprecate_many(self, resources: List[Resource]) -> None: raise not_supported() - def _sparql(self, query: str) -> List[Resource]: + def _sparql(self, query: str, view: Optional[str]) -> List[Resource]: raise not_supported() - def _elastic(self, query: str) -> List[Resource]: + def _elastic(self, query: str, view: Optional[str]) -> List[Resource]: raise not_supported() def _freeze_many(self, resources: List[Resource]) -> None: diff --git a/kgforge/specializations/stores/nexus/service.py b/kgforge/specializations/stores/nexus/service.py index b7e34921f..8d1c8abae 100644 --- a/kgforge/specializations/stores/nexus/service.py +++ b/kgforge/specializations/stores/nexus/service.py @@ -74,6 +74,9 @@ class Service: PROJECT_PROPERTY_FALLBACK = f"{NEXUS_NAMESPACE_FALLBACK}project" UNCONSTRAINED_SCHEMA = "https://bluebrain.github.io/nexus/schemas/unconstrained.json" + SPARQL_ENDPOINT_TYPE = "sparql" + ELASTIC_ENDPOINT_TYPE = "elastic" + def __init__( self, endpoint: str, @@ -118,16 +121,8 @@ def __init__( self.headers = {"Content-Type": content_type, "Accept": accept} - sparql_config = ( - searchendpoints["sparql"] - if searchendpoints and "sparql" in searchendpoints - else None - ) - elastic_config = ( - searchendpoints["elastic"] - if searchendpoints and "elastic" in searchendpoints - else None - ) + sparql_config = searchendpoints.get("sparql", None) if searchendpoints else None + elastic_config = searchendpoints.get("elastic", None) if searchendpoints else None self.headers_sparql = { "Content-Type": sparql_config["Content-Type"] @@ -197,38 +192,19 @@ def __init__( else None ) - self.sparql_endpoint = {} - self.elastic_endpoint = {} - self.sparql_endpoint["endpoint"] = "/".join( - ( - self.endpoint, - "views", - quote_plus(org), - quote_plus(prj), - quote_plus(sparql_view), - "sparql", - ) - ) - self.sparql_endpoint["type"] = "sparql" + self.sparql_endpoint = { + "endpoint": self.make_endpoint(sparql_view, Service.SPARQL_ENDPOINT_TYPE) + } + + self.elastic_endpoint = { + "endpoint": self.make_endpoint(elastic_view, Service.ELASTIC_ENDPOINT_TYPE) + } - self.elastic_endpoint["endpoint"] = "/".join( - ( - self.endpoint, - "views", - quote_plus(org), - quote_plus(prj), - quote_plus(elastic_view), - "_search", - ) - ) - self.elastic_endpoint["type"] = "elastic" self.elastic_endpoint["view"] = LazyAction( nexus.views.fetch, quote_plus(org), quote_plus(prj), - es_mapping - if es_mapping - else elastic_view, # Todo consider using Dict for es_mapping + es_mapping if es_mapping else elastic_view, # Todo consider using Dict for es_mapping ) self.elastic_endpoint["default_str_keyword_field"] = default_str_keyword_field @@ -239,6 +215,35 @@ def __init__( except RuntimeError: pass + @staticmethod + def make_query_endpoint(base, view, endpoint_type, organisation, project) -> str: + + if endpoint_type == Service.SPARQL_ENDPOINT_TYPE: + last_url_component = "sparql" + elif endpoint_type == Service.ELASTIC_ENDPOINT_TYPE: + last_url_component = "_search" + else: + raise ValueError(f"Unknown endpoint type {endpoint_type}") + + return "/".join( + ( + base, + "views", + quote_plus(organisation), + quote_plus(project), + quote_plus(view), + last_url_component, + ) + ) + + def make_endpoint(self, view: str, endpoint_type: str): + return Service.make_query_endpoint( + base=self.endpoint, view=view, + endpoint_type=endpoint_type, + organisation=self.organisation, + project=self.project + ) + def get_project_context(self) -> Dict: project_data = nexus.projects.fetch(self.organisation, self.project) context = {"@base": project_data["base"], "@vocab": project_data["vocab"]} diff --git a/kgforge/specializations/stores/sparql/sparql_service.py b/kgforge/specializations/stores/sparql/sparql_service.py index dca8d07b3..b58457cbc 100644 --- a/kgforge/specializations/stores/sparql/sparql_service.py +++ b/kgforge/specializations/stores/sparql/sparql_service.py @@ -13,15 +13,15 @@ # along with Blue Brain Nexus Forge. If not, see . import copy -from typing import Dict, List, Optional, Union, Tuple +from typing import Dict -from kgforge.core.resource import Resource from kgforge.core.commons.context import Context -from kgforge.core.wrappings.dict import wrap_dict class SPARQLService: + SPARQL_ENDPOINT_TYPE = "sparql" + def __init__( self, endpoint: str, @@ -36,7 +36,7 @@ def __init__( self.endpoint = endpoint self.model_context = model_context - self.context_cache: Dict = dict() + self.context_cache: Dict = {} self.context = store_context self.max_connection = max_connection self.params = copy.deepcopy(params) @@ -44,7 +44,8 @@ def __init__( self.headers = {"Content-Type": content_type, "Accept": accept} try: - sparql_config = searchendpoints["sparql"] + sparql_config = searchendpoints.get("sparql", None) + self.headers_sparql = { "Content-Type": sparql_config["Content-Type"] if sparql_config and "Content-Type" in sparql_config @@ -54,8 +55,9 @@ def __init__( else "application/sparql-results+json", } - self.sparql_endpoint = dict() - self.sparql_endpoint["endpoint"] = searchendpoints["sparql"]["endpoint"] - self.sparql_endpoint["type"] = "sparql" - except Exception: - raise ValueError(f"Store configuration error: sparql searchendpoint missing") + self.sparql_endpoint = { + "endpoint": searchendpoints["sparql"]["endpoint"] + } + + except Exception as e: + raise ValueError("Store configuration error: sparql searchendpoint missing") from e diff --git a/kgforge/specializations/stores/sparql_store.py b/kgforge/specializations/stores/sparql_store.py index ae30de4e4..8ff30d5ce 100644 --- a/kgforge/specializations/stores/sparql_store.py +++ b/kgforge/specializations/stores/sparql_store.py @@ -28,43 +28,48 @@ from kgforge.core.commons.exceptions import QueryingError from kgforge.core.commons.execution import not_supported from kgforge.core.commons.sparql_query_builder import SPARQLQueryBuilder -from kgforge.specializations.stores.bluebrain_nexus import ( - _create_select_query -) +from kgforge.specializations.stores.bluebrain_nexus import _create_select_query class SPARQLStore(DatasetStore): """A Store specialized for SPARQL queries, supporting only Reading (searching) methods.""" - def __init__(self, model: Optional[Model] = None, - endpoint: Optional[str] = None, - file_resource_mapping: Optional[str] = None, - searchendpoints: Optional[Dict] = None, - **store_config) -> None: + def __init__( + self, + model: Optional[Model] = None, + endpoint: Optional[str] = None, + file_resource_mapping: Optional[str] = None, + searchendpoints: Optional[Dict] = None, + **store_config, + ) -> None: super().__init__(model) self.endpoint = endpoint self.file_resource_mapping = file_resource_mapping self.searchendpoints = searchendpoints - self.service = self._initialize_service(endpoint, searchendpoints, **store_config) + self.service = self._initialize_service( + endpoint, searchendpoints, **store_config + ) @property def mapper(self) -> Optional[Type[Mapper]]: return DictionaryMapper def _download_one( - self, - url: str, - path: str, - store_metadata: Optional[DictWrapper], - cross_bucket: bool, - content_type: str, - bucket: str + self, + url: str, + path: str, + store_metadata: Optional[DictWrapper], + cross_bucket: bool, + content_type: str, + bucket: str, ) -> None: raise not_supported() def _search( - self, filters: List[Union[Dict, Filter]], - resolvers: Optional[List[Resolver]] = None, **params + self, + *filters: Union[Dict, Filter], + resolvers: Optional[List[Resolver]] = None, + **params, ) -> List[Resource]: # Positional arguments in 'filters' are instances of type Filter from wrappings/paths.py # A dictionary can be provided for filters: @@ -91,17 +96,15 @@ def _search( includes = params.get("includes", None) excludes = params.get("excludes", None) search_endpoint = params.get( - "search_endpoint", self.service.sparql_endpoint["type"] + "search_endpoint", SPARQLService.SPARQL_ENDPOINT_TYPE ) - if search_endpoint not in [ - self.service.sparql_endpoint["type"], - ]: - raise ValueError( - f"The provided search_endpoint value '{search_endpoint}' is not supported, only 'sparql'" - ) - if "filters" in params: + + valid_endpoints = [SPARQLService.SPARQL_ENDPOINT_TYPE] + + if search_endpoint not in valid_endpoints: raise ValueError( - "A 'filters' key was provided as params filters should be provided as iterable" + f"The provided search_endpoint value '{search_endpoint}' is not supported, " + f"supported endpoint types are {valid_endpoints}" ) if filters: @@ -119,10 +122,13 @@ def _search( ) query_statements, query_filters = SPARQLQueryBuilder.build( - schema=None, resolvers=resolvers, context=self.model_context, filters=filters - ) + schema=None, + resolvers=resolvers, + context=self.model_context(), + filters=filters, + ) statements = ";\n ".join(query_statements) - _filters = (".\n".join(query_filters) + '\n') if len(filters) > 0 else "" + _filters = (".\n".join(query_filters) + "\n") if len(filters) > 0 else "" _vars = ["?id"] query = _create_select_query( _vars, f"?id {statements} . \n {_filters}", distinct, False @@ -131,12 +137,18 @@ def _search( resources = self.sparql(query, debug=debug, limit=limit, offset=offset) return resources - def _sparql(self, query: str) -> Optional[Union[List[Resource], Resource]]: + def _sparql( + self, query: str, endpoint: str + ) -> Optional[Union[List[Resource], Resource]]: try: response = requests.post( - self.service.sparql_endpoint["endpoint"], + ( + self.service.sparql_endpoint["endpoint"] + if endpoint is None + else endpoint + ), data=query, - headers=self.service.headers_sparql + headers=self.service.headers_sparql, ) response.raise_for_status() except Exception as e: @@ -144,15 +156,18 @@ def _sparql(self, query: str) -> Optional[Union[List[Resource], Resource]]: data = response.json() - return SPARQLQueryBuilder.build_resource_from_response(query, data, self.model_context) + return SPARQLQueryBuilder.build_resource_from_response( + query, data, self.model_context + ) def elastic( - self, query: str, debug: bool, limit: int = None, offset: int = None, **params + self, query: str, debug: bool, limit: int = None, offset: int = None, **params ) -> Optional[Union[List[Resource], Resource]]: raise not_supported() - def _prepare_download_one(self, url: str, store_metadata: Optional[DictWrapper], - cross_bucket: bool) -> Tuple[str, str]: + def _prepare_download_one( + self, url: str, store_metadata: Optional[DictWrapper], cross_bucket: bool + ) -> Tuple[str, str]: raise not_supported() def retrieve( @@ -169,10 +184,7 @@ def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: # Utils. def _initialize_service( - self, - endpoint: Optional[str], - searchendpoints: Optional[Dict], - **store_config, + self, endpoint: Optional[str], searchendpoints: Optional[Dict], **store_config ) -> SPARQLService: try: max_connection = store_config.pop("max_connection", 50) @@ -183,15 +195,18 @@ def _initialize_service( content_type = store_config.pop("Content-Type", "application/ld+json") accept = store_config.pop("Accept", "application/ld+json") params = store_config.pop("params", {}) - store_context = store_config.pop('store_context', None) + store_context = store_config.pop("store_context", None) except Exception as ve: raise ValueError(f"Store configuration error: {ve}") from ve return SPARQLService( - endpoint=endpoint, model_context=self.model_context, - store_context=store_context, max_connection=max_connection, + endpoint=endpoint, + model_context=self.model_context, + store_context=store_context, + max_connection=max_connection, searchendpoints=searchendpoints, content_type=content_type, - accept=accept, **params + accept=accept, + **params, ) diff --git a/tests/specializations/stores/test_bluebrain_nexus.py b/tests/specializations/stores/test_bluebrain_nexus.py index 877ace356..46e868bcf 100644 --- a/tests/specializations/stores/test_bluebrain_nexus.py +++ b/tests/specializations/stores/test_bluebrain_nexus.py @@ -17,6 +17,7 @@ from urllib.parse import quote_plus, urljoin from urllib.request import pathname2url from uuid import uuid4 +from contextlib import nullcontext as does_not_raise import nexussdk import pytest @@ -597,6 +598,28 @@ def test_dict_to_filters(self, filters, expected): # Helpers +@pytest.mark.parametrize( + "view, endpoint_type, expected_endpoint, exception", + [ + ( + Service.DEFAULT_SPARQL_INDEX_FALLBACK, Service.SPARQL_ENDPOINT_TYPE, + "https://nexus-instance.org/views/test/kgforge/https%3A%2F%2Fbluebrain.github.io%2Fnexus%2Fvocabulary%2FdefaultSparqlIndex/sparql", does_not_raise() + ), + ( + Service.DEFAULT_ES_INDEX_FALLBACK, Service.ELASTIC_ENDPOINT_TYPE, + "https://nexus-instance.org/views/test/kgforge/https%3A%2F%2Fbluebrain.github.io%2Fnexus%2Fvocabulary%2FdefaultElasticSearchIndex/_search", does_not_raise() + ), + ( + "any_view_id", "unknown_type", None, pytest.raises(ValueError) + ) + ], +) +def test_make_search_endpoint(nexus_store, view, endpoint_type, expected_endpoint, exception): + with exception: + endpoint = nexus_store.service.make_endpoint(view, endpoint_type=endpoint_type) + assert endpoint == expected_endpoint + + def assert_frozen_id(resource: Resource): assert resource.id.endswith("?rev=" + str(resource._store_metadata["_rev"])) diff --git a/tests/specializations/stores/test_sparql.py b/tests/specializations/stores/test_sparql.py index da414f333..0426ab8d9 100644 --- a/tests/specializations/stores/test_sparql.py +++ b/tests/specializations/stores/test_sparql.py @@ -58,7 +58,7 @@ def test_config(sparql_store, rdf_model): def test_search_params(sparql_store): - with pytest.raises(ValueError): + with pytest.raises(AttributeError): sparql_store.search(resolvers=[None], filters=[None]) From 16e1d94a4c17c25dd886325eeca4f5f9217d5cd6 Mon Sep 17 00:00:00 2001 From: Sarah Date: Fri, 2 Feb 2024 17:08:30 +0100 Subject: [PATCH 07/49] filter exception fix (#375) --- kgforge/specializations/stores/bluebrain_nexus.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index 8c231850e..accd9fea9 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -662,7 +662,7 @@ def search( raise not_supported(("bucket", True)) if filters: - if isinstance(filters, list) and len(filters) > 0: + if isinstance(filters, (list, tuple)) and len(filters) > 0: if filters[0] is None: raise ValueError("Filters cannot be None") elif isinstance(filters[0], dict): From 5fc964c224addef6fac27b6573ec346dc0d398b0 Mon Sep 17 00:00:00 2001 From: Sarah Date: Tue, 6 Feb 2024 09:44:01 +0100 Subject: [PATCH 08/49] added timeouts to every requests. call (#368) * added timeouts to every requests. call * centralise default request timeout * rm import * use constant in file get --- kgforge/core/archetypes/mapping.py | 5 ++- kgforge/core/commons/constants.py | 1 + kgforge/core/commons/files.py | 6 +++- .../service/entity_linking_elastic_service.py | 7 +++- .../specializations/stores/bluebrain_nexus.py | 33 ++++++++++++++----- .../specializations/stores/nexus/service.py | 4 ++- .../specializations/stores/sparql_store.py | 4 +++ 7 files changed, 47 insertions(+), 13 deletions(-) create mode 100644 kgforge/core/commons/constants.py diff --git a/kgforge/core/archetypes/mapping.py b/kgforge/core/archetypes/mapping.py index 971f82169..06d7008f9 100644 --- a/kgforge/core/archetypes/mapping.py +++ b/kgforge/core/archetypes/mapping.py @@ -21,6 +21,7 @@ from requests import RequestException from kgforge.core.commons.attributes import repr_class +from kgforge.core.commons.constants import DEFAULT_REQUEST_TIMEOUT from kgforge.core.commons.exceptions import MappingLoadError @@ -32,6 +33,8 @@ class MappingType(Enum): class Mapping(ABC): + REQUEST_TIMEOUT = DEFAULT_REQUEST_TIMEOUT + # See dictionaries.py in kgforge/specializations/mappings/ for a reference implementation. # POLICY Exceptions should not be catched so that the KnowledgeGraphForge initialization fails. @@ -91,7 +94,7 @@ def load_file(cls, filepath, raise_ex=True): @classmethod def load_url(cls, url, raise_ex=True): try: - response = requests.get(url) + response = requests.get(url, timeout=Mapping.REQUEST_TIMEOUT) response.raise_for_status() return cls(response.text) except RequestException as e: diff --git a/kgforge/core/commons/constants.py b/kgforge/core/commons/constants.py new file mode 100644 index 000000000..15f13f9b6 --- /dev/null +++ b/kgforge/core/commons/constants.py @@ -0,0 +1 @@ +DEFAULT_REQUEST_TIMEOUT = 60 diff --git a/kgforge/core/commons/files.py b/kgforge/core/commons/files.py index 15a24fede..fab5e7b47 100644 --- a/kgforge/core/commons/files.py +++ b/kgforge/core/commons/files.py @@ -18,6 +18,10 @@ import yaml from requests import RequestException +from kgforge.core.commons.constants import DEFAULT_REQUEST_TIMEOUT + +REQUEST_TIMEOUT = DEFAULT_REQUEST_TIMEOUT + def load_yaml_from_file(filepath: str): config_data = load_file_as_byte(filepath) @@ -32,7 +36,7 @@ def load_file_as_byte(source: str): data = filepath.read_bytes() else: try: - response = requests.get(source) + response = requests.get(source, timeout=REQUEST_TIMEOUT) response.raise_for_status() data = response.content except RequestException as re: diff --git a/kgforge/specializations/resolvers/entity_linking/service/entity_linking_elastic_service.py b/kgforge/specializations/resolvers/entity_linking/service/entity_linking_elastic_service.py index 012c318ac..aba5c7b19 100644 --- a/kgforge/specializations/resolvers/entity_linking/service/entity_linking_elastic_service.py +++ b/kgforge/specializations/resolvers/entity_linking/service/entity_linking_elastic_service.py @@ -19,6 +19,7 @@ import requests from kgforge.core.archetypes.store import Store +from kgforge.core.commons.constants import DEFAULT_REQUEST_TIMEOUT from kgforge.core.conversions.json import as_json from kgforge.core.resource import encode from kgforge.core.wrappings import Filter, FilterOperator @@ -33,6 +34,8 @@ class EntityLinkerElasticService(EntityLinkerService): + REQUEST_TIMEOUT = DEFAULT_REQUEST_TIMEOUT + def __init__( self, store: Callable, @@ -70,7 +73,9 @@ def _(d, resource): resources, scores = [], [] for mention in mentions_labels: call_url = self.encoder.format(x=mention) - embedding_object = requests.get(url=call_url) + embedding_object = requests.get( + url=call_url, timeout=EntityLinkerElasticService.REQUEST_TIMEOUT + ) embedding = self.mapper().map( embedding_object.json(), self.result_mapping, None ) diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index accd9fea9..8ec0714d5 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -24,12 +24,12 @@ from typing import Any, Dict, List, Optional, Tuple, Union, Type from urllib.parse import quote_plus, unquote, urlparse, parse_qs -from requests import HTTPError import nexussdk as nexus import requests from aiohttp import ClientSession, MultipartWriter from aiohttp.hdrs import CONTENT_DISPOSITION, CONTENT_TYPE +from kgforge.core.commons.constants import DEFAULT_REQUEST_TIMEOUT from kgforge.core.commons.dictionaries import update_dict from kgforge.core.commons.es_query_builder import ESQueryBuilder from kgforge.core.commons.sparql_query_builder import SPARQLQueryBuilder, format_type, \ @@ -62,6 +62,9 @@ from kgforge.specializations.stores.nexus.service import BatchAction, Service, _error_message +REQUEST_TIMEOUT = DEFAULT_REQUEST_TIMEOUT + + def catch_http_error_nexus( r: requests.Response, e: Type[BaseException], error_message_formatter=_error_message ): @@ -168,6 +171,7 @@ def _register_one(self, resource: Resource, schema_id: str) -> None: headers=self.service.headers, data=json.dumps(data, ensure_ascii=True), params=params_register, + timeout=REQUEST_TIMEOUT ) else: url = url_base @@ -176,6 +180,7 @@ def _register_one(self, resource: Resource, schema_id: str) -> None: headers=self.service.headers, data=json.dumps(data, ensure_ascii=True), params=params_register, + timeout=REQUEST_TIMEOUT ) catch_http_error_nexus(response, RegistrationError) @@ -232,7 +237,7 @@ def _upload_one(self, path: Path, content_type: str) -> Dict: response = nexus.files.create( self.organisation, self.project, file, content_type=mime_type ) - except HTTPError as e: + except requests.HTTPError as e: raise UploadingError(_error_message(e)) from e return response @@ -292,7 +297,10 @@ def retrieve( else: url = url_resource try: - response = requests.get(url, params=query_params, headers=self.service.headers) + response = requests.get( + url, params=query_params, headers=self.service.headers, + timeout=REQUEST_TIMEOUT + ) catch_http_error_nexus(response, RetrievalError) except RetrievalError as er: @@ -307,7 +315,8 @@ def retrieve( else id_without_query response = requests.get( - url, params=query_params, headers=self.service.headers + url, params=query_params, headers=self.service.headers, + timeout=REQUEST_TIMEOUT ) catch_http_error_nexus(response, RetrievalError) else: @@ -316,7 +325,8 @@ def retrieve( if retrieve_source and not cross_bucket: response_metadata = requests.get( - url_resource, params=query_params, headers=self.service.headers + url_resource, params=query_params, headers=self.service.headers, + timeout=REQUEST_TIMEOUT ) catch_http_error_nexus(response_metadata, RetrievalError) @@ -324,7 +334,7 @@ def retrieve( response_metadata = requests.get( "/".join([response.json()["_self"], "source"]), params=query_params, - headers=self.service.headers + headers=self.service.headers, timeout=REQUEST_TIMEOUT ) catch_http_error_nexus(response, RetrievalError) @@ -356,7 +366,7 @@ def retrieve( return resource def _retrieve_filename(self, id_: str) -> Tuple[str, str]: - response = requests.get(id_, headers=self.service.headers) + response = requests.get(id_, headers=self.service.headers, timeout=REQUEST_TIMEOUT) catch_http_error_nexus(response, DownloadingError) metadata = response.json() return metadata["_filename"], metadata["_mediaType"] @@ -420,7 +430,8 @@ def _download_one( response = requests.get( url=url, headers=headers, - params=params_download + params=params_download, + timeout=REQUEST_TIMEOUT ) catch_http_error_nexus( response, DownloadingError, @@ -520,6 +531,7 @@ def _update_one(self, resource: Resource, schema_id: str) -> None: headers=self.service.headers, data=json.dumps(data, ensure_ascii=True), params=params_update, + timeout=REQUEST_TIMEOUT ) catch_http_error_nexus(response, UpdatingError) @@ -565,6 +577,7 @@ def _tag_one(self, resource: Resource, value: str) -> None: headers=self.service.headers, data=json.dumps(data, ensure_ascii=True), params=params_tag, + timeout=REQUEST_TIMEOUT ) catch_http_error_nexus(response, TaggingError) @@ -615,7 +628,7 @@ def _deprecate_one(self, resource: Resource) -> None: params_deprecate = params response = requests.delete( - url, headers=self.service.headers, params=params_deprecate + url, headers=self.service.headers, params=params_deprecate, timeout=REQUEST_TIMEOUT ) catch_http_error_nexus(response, DeprecationError) self.service.sync_metadata(resource, response.json()) @@ -835,6 +848,7 @@ def _sparql(self, query: str, view: str) -> List[Resource]: endpoint, data=query, headers=self.service.headers_sparql, + timeout=REQUEST_TIMEOUT ) catch_http_error_nexus(response, QueryingError) @@ -853,6 +867,7 @@ def _elastic(self, query: str, view: Optional[str]) -> List[Resource]: endpoint, data=query, headers=self.service.headers_elastic, + timeout=REQUEST_TIMEOUT ) catch_http_error_nexus(response, QueryingError) diff --git a/kgforge/specializations/stores/nexus/service.py b/kgforge/specializations/stores/nexus/service.py index 8d1c8abae..014e41456 100644 --- a/kgforge/specializations/stores/nexus/service.py +++ b/kgforge/specializations/stores/nexus/service.py @@ -29,6 +29,7 @@ from aiohttp import ClientSession, hdrs from requests import HTTPError +from kgforge.core.commons.constants import DEFAULT_REQUEST_TIMEOUT from kgforge.core.resource import Resource from kgforge.core.commons.actions import ( Action, @@ -63,6 +64,7 @@ class BatchAction(Enum): class Service: + REQUEST_TIMEOUT = DEFAULT_REQUEST_TIMEOUT NEXUS_NAMESPACE_FALLBACK = "https://bluebrain.github.io/nexus/vocabulary/" NEXUS_CONTEXT_FALLBACK = "https://bluebrain.github.io/nexus/contexts/resource.json" NEXUS_CONTEXT_SOURCE_FALLBACK = ( @@ -259,7 +261,7 @@ def resolve_context(self, iri: str, local_only: Optional[bool] = False) -> Dict: self.store_local_context if iri == self.store_context else iri ) url = "/".join((self.url_resolver, "_", quote_plus(context_to_resolve))) - response = requests.get(url, headers=self.headers) + response = requests.get(url, headers=self.headers, timeout=Service.REQUEST_TIMEOUT) response.raise_for_status() resource = response.json() except Exception as exc: diff --git a/kgforge/specializations/stores/sparql_store.py b/kgforge/specializations/stores/sparql_store.py index 8ff30d5ce..1ff4b0b14 100644 --- a/kgforge/specializations/stores/sparql_store.py +++ b/kgforge/specializations/stores/sparql_store.py @@ -15,6 +15,7 @@ import requests from typing import Dict, List, Optional, Union, Any, Type, Tuple +from kgforge.core.commons.constants import DEFAULT_REQUEST_TIMEOUT from kgforge.core.resource import Resource from kgforge.core.archetypes.mapper import Mapper from kgforge.core.archetypes.resolver import Resolver @@ -34,6 +35,8 @@ class SPARQLStore(DatasetStore): """A Store specialized for SPARQL queries, supporting only Reading (searching) methods.""" + REQUEST_TIMEOUT = DEFAULT_REQUEST_TIMEOUT + def __init__( self, model: Optional[Model] = None, @@ -149,6 +152,7 @@ def _sparql( ), data=query, headers=self.service.headers_sparql, + timeout=SPARQLStore.REQUEST_TIMEOUT, ) response.raise_for_status() except Exception as e: From caab280f43c4509ac12ecda6e30f7be4f7fb1a8b Mon Sep 17 00:00:00 2001 From: NicoRicardi Date: Mon, 5 Feb 2024 14:39:42 +0100 Subject: [PATCH 09/49] resolving returns also the hasleafregionpart attribute of the resource --- .../nexus-resolver/term-to-resource-mapping.hjson | 3 ++- kgforge/specializations/resolvers/ontology_resolver.py | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/examples/configurations/nexus-resolver/term-to-resource-mapping.hjson b/examples/configurations/nexus-resolver/term-to-resource-mapping.hjson index 68c41c9d0..4c5fe3efa 100644 --- a/examples/configurations/nexus-resolver/term-to-resource-mapping.hjson +++ b/examples/configurations/nexus-resolver/term-to-resource-mapping.hjson @@ -13,7 +13,8 @@ delineatedBy: x.delineatedBy if hasattr(x, "delineatedBy") else None hasLayerLocationPhenotype: x.hasLayerLocationPhenotype if hasattr(x, "hasLayerLocationPhenotype") else None representedInAnnotation: x.representedInAnnotation if hasattr(x, "representedInAnnotation") else None + hasLeafRegionPart: x.hasLeafRegionPart if hasattr(x, "hasLeafRegionPart") else None isPartOf: x.isPartOf if hasattr(x, "isPartOf") else None isLayerPartOf: x.isLayerPartOf if hasattr(x, "isLayerPartOf") else None units: x.units if hasattr(x, "units") else None -} \ No newline at end of file +} diff --git a/kgforge/specializations/resolvers/ontology_resolver.py b/kgforge/specializations/resolvers/ontology_resolver.py index 82a2ac2ca..0ee77f201 100644 --- a/kgforge/specializations/resolvers/ontology_resolver.py +++ b/kgforge/specializations/resolvers/ontology_resolver.py @@ -61,6 +61,7 @@ def _resolve(self, text: Union[str, List[str]], target: Optional[str], type: Opt delineatedBy ?delineatedBy ; hasLayerLocationPhenotype ?hasLayerLocationPhenotype ; representedInAnnotation ?representedInAnnotation ; + hasLeafRegionPart ?hasLeafRegionPart ; isPartOf ?isPartOf ; isLayerPartOf ?isLayerPartOf . }} WHERE {{ @@ -104,6 +105,9 @@ def _resolve(self, text: Union[str, List[str]], target: Optional[str], type: Opt ?id representedInAnnotation ?representedInAnnotation . }} OPTIONAL {{ + ?id hasLeafRegionPart ?hasLeafRegionPart . + }} + OPTIONAL {{ ?id isPartOf ?isPartOf . }} OPTIONAL {{ From d6388b85ac2d658263de46ee4658d52dcddf465b Mon Sep 17 00:00:00 2001 From: NicoRicardi Date: Thu, 8 Feb 2024 17:13:25 +0100 Subject: [PATCH 10/49] deflatten is independent of order of items. If both prop and prop.something it raises an error --- kgforge/core/conversions/dataframe.py | 44 ++++++++++++++---------- tests/core/conversions/test_dataframe.py | 22 ++++++++++-- 2 files changed, 45 insertions(+), 21 deletions(-) diff --git a/kgforge/core/conversions/dataframe.py b/kgforge/core/conversions/dataframe.py index 9259083f5..b3542762b 100644 --- a/kgforge/core/conversions/dataframe.py +++ b/kgforge/core/conversions/dataframe.py @@ -63,26 +63,32 @@ def _from_dataframe(row: Series, na: Union[Any, List[Any]], nesting: str) -> Res data = deflatten(items, nesting) return from_json(data, None) - def deflatten(items: List[Tuple[str, Any]], sep: str) -> Dict: d = {} - i = 0 - while i < len(items): - k, v = items[i] - if sep not in k: - d[k] = v - i += 1 + split = [] + for n1, t1_ in enumerate(items): + if n1 in split: + continue + k1, v1 = t1_ + if isinstance(k1, str) and sep in k1: + pre, _ = k1.split(sep, maxsplit=1) + if pre in d: + raise ValueError(f'Mix of {pre} and {pre}{sep} (e.g. {k1}). Cannot be processed!') + l = [] + for n2, t2_ in enumerate(items): + try: + k2, v2 = t2_ + except: + print(n2,t2_) + return 0 + if isinstance(k2, str) and k2.startswith(f'{pre}{sep}'): + _, post = k2.split(sep, maxsplit=1) + l.append((post, v2)) + split.append(n2) + d[pre] = deflatten(l, sep) else: - pk, _, ck = k.partition(sep) - pitems = list(take_while(items[i:], f"{pk}{sep}")) - d[pk] = deflatten(pitems, sep) - i += len(pitems) + if k1 in d: + print('b',d) + raise ValueError(f'Mix of {pre} and {pre}{sep} (e.g. {k1}). Cannot be processed!') + d[k1] = v1 return d - - -def take_while(items: List[Tuple[str, Any]], start: str) -> Iterator[Tuple[str, Any]]: - for k, v in items: - if k.startswith(start): - yield k.replace(start, "", 1), v - else: - break diff --git a/tests/core/conversions/test_dataframe.py b/tests/core/conversions/test_dataframe.py index 38e4e8701..d5e47689f 100644 --- a/tests/core/conversions/test_dataframe.py +++ b/tests/core/conversions/test_dataframe.py @@ -20,6 +20,7 @@ # Test suite for conversion of resource to / from Pandas DataFrame. from kgforge.core.resource import Resource +from kgforge.core.conversions.dataframe import deflatten @pytest.fixture @@ -64,7 +65,7 @@ def ndf(): class TestConversionToDataFrame: - + def test_as_dataframe_basic(self, forge, df, df_from_one_resource, r1, r2): assert(isinstance(r1, Resource)) x = forge.as_dataframe(r1) @@ -215,7 +216,7 @@ def test_from_dataframe_na_strings(self, forge, df, r1, r2): del r2.p1 rcs = [r1, r2] assert x == rcs - + def test_from_dataframe_nesting_default_depth_1(self, ndf, forge, r3, r4): x = forge.from_dataframe(ndf) rcs = [r3, r4] @@ -230,6 +231,17 @@ def test_from_dataframe_nesting_default_depth_2(self, forge, ndf, r1, r2, r3, r4 del r2.p2 rcs = [r3, r4] assert x == rcs + + def test_from_dataframe_nesting_default_depth_2_not_ordered(self, forge, ndf, r1, r2, r3, r4, r5): + ndf.drop("p4.p2", axis=1, inplace=True) + ndf["p4.p2.p5"] = ["v5e", np.nan] + ndf["p4.p2.p6"] = ["v6e", np.nan] + ndf = ndf.reindex(columns=['p4.p2.p6', 'p4.id', 'id', 'type', 'p4.p2.p5', 'p3', 'p4.type', 'p4.p1', 'p4.p2']) + x = forge.from_dataframe(ndf) + r1.p2 = r5 + del r2.p2 + rcs = [r3, r4] + assert x == rcs def test_from_dataframe_nesting_specific(self, forge, ndf, r3, r4): ndf.rename(columns={ @@ -264,3 +276,9 @@ def test_from_dataframe_nesting_na_strings(self, forge, ndf, r1, r2, r3, r4): del r2.p1 rcs = [r3, r4] assert x == rcs + +def test_deflatten_raises(): + with pytest.raises(ValueError) as exc: + deflatten([('a','A'), ('a.p', 'Q')], '.') + msg = str(exc.value) + assert 'Mix of' in msg and 'Cannot be processed' From e358acf738f32fc1bf56c5882b4cb17ac2931ab7 Mon Sep 17 00:00:00 2001 From: NicoRicardi Date: Fri, 9 Feb 2024 09:43:20 +0100 Subject: [PATCH 11/49] removed prints and fixed linting --- kgforge/core/conversions/dataframe.py | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/kgforge/core/conversions/dataframe.py b/kgforge/core/conversions/dataframe.py index b3542762b..9581651f0 100644 --- a/kgforge/core/conversions/dataframe.py +++ b/kgforge/core/conversions/dataframe.py @@ -63,6 +63,7 @@ def _from_dataframe(row: Series, na: Union[Any, List[Any]], nesting: str) -> Res data = deflatten(items, nesting) return from_json(data, None) + def deflatten(items: List[Tuple[str, Any]], sep: str) -> Dict: d = {} split = [] @@ -74,21 +75,16 @@ def deflatten(items: List[Tuple[str, Any]], sep: str) -> Dict: pre, _ = k1.split(sep, maxsplit=1) if pre in d: raise ValueError(f'Mix of {pre} and {pre}{sep} (e.g. {k1}). Cannot be processed!') - l = [] + pitems = [] for n2, t2_ in enumerate(items): - try: - k2, v2 = t2_ - except: - print(n2,t2_) - return 0 + k2, v2 = t2_ if isinstance(k2, str) and k2.startswith(f'{pre}{sep}'): _, post = k2.split(sep, maxsplit=1) - l.append((post, v2)) + pitems.append((post, v2)) split.append(n2) - d[pre] = deflatten(l, sep) + d[pre] = deflatten(pitems, sep) else: if k1 in d: - print('b',d) raise ValueError(f'Mix of {pre} and {pre}{sep} (e.g. {k1}). Cannot be processed!') d[k1] = v1 return d From 9ca03981c26595d2068d389ae31fefa4718fec3d Mon Sep 17 00:00:00 2001 From: NicoRicardi Date: Fri, 9 Feb 2024 10:52:44 +0100 Subject: [PATCH 12/49] comments for clarity as suggested by Sarah Mouffok --- kgforge/core/conversions/dataframe.py | 53 ++++++++++++++++++++------- 1 file changed, 39 insertions(+), 14 deletions(-) diff --git a/kgforge/core/conversions/dataframe.py b/kgforge/core/conversions/dataframe.py index 9581651f0..ea416f9c5 100644 --- a/kgforge/core/conversions/dataframe.py +++ b/kgforge/core/conversions/dataframe.py @@ -65,26 +65,51 @@ def _from_dataframe(row: Series, na: Union[Any, List[Any]], nesting: str) -> Res def deflatten(items: List[Tuple[str, Any]], sep: str) -> Dict: - d = {} - split = [] + """ + + + Parameters + ---------- + items : List[Tuple[str, Any]] + at the beginning (first call in the recursion cycle) it is obtain within _from_dataframe as a list, one per row, + of tuples where the first item is the column name and the second is the value + sep : str + the separator. Usually '.' + + Raises + ------ + ValueError + One cannot provide both 'property.subproperty1' and 'property'. In such case, a ValueError is raised + + Returns + ------- + Dict + a deflattened (nested) dictionary of {columnName: value}. + Deflatten means that the separator implies nesting of the dictionary. + + """ + d = {} # dictionary that will be returned + split = [] # those we have already split (we need to keep track) for n1, t1_ in enumerate(items): - if n1 in split: + if n1 in split: # already done, continue continue - k1, v1 = t1_ - if isinstance(k1, str) and sep in k1: - pre, _ = k1.split(sep, maxsplit=1) - if pre in d: + k1, v1 = t1_ # all tuples refer to a key-value pair in the DataFrame row + if isinstance(k1, str) and sep in k1: # avoid issue if int or other class + pre, _ = k1.split(sep, maxsplit=1) # getting prefix ('agent.type' => 'agent') + if pre in d: # we already have d[pre] from the else statement, i.e. it appeared without sep! raise ValueError(f'Mix of {pre} and {pre}{sep} (e.g. {k1}). Cannot be processed!') - pitems = [] + # e.g. both d['agent'] = 'NicoRicardi' and d['agent.name'] = 'NicoRicardi' + pitems = [] # any of type {pre}{sep}{depth2}{sep}{depth3} => {depth2}{sep}{depth3} for n2, t2_ in enumerate(items): k2, v2 = t2_ if isinstance(k2, str) and k2.startswith(f'{pre}{sep}'): - _, post = k2.split(sep, maxsplit=1) + _, post = k2.split(sep, maxsplit=1) # _ ought to be == pre, but we care mainly about what comes after {pre}{sep} pitems.append((post, v2)) - split.append(n2) - d[pre] = deflatten(pitems, sep) + split.append(n2) # we do not need to split this item anymore in this specific recursive call + d[pre] = deflatten(pitems, sep) # these items get flattened further in case there is a deeper nesting else: - if k1 in d: + if k1 in d: # this key has already been added by the if statement(i.e. from splitting a longer key) raise ValueError(f'Mix of {pre} and {pre}{sep} (e.g. {k1}). Cannot be processed!') - d[k1] = v1 - return d + # e.g. both d['agent'] = 'NicoRicardi' and d['agent.name'] = 'NicoRicardi' + d[k1] = v1 # not nested key-value pair, we just assign + return d # all recursive calls are done, i.e. no nesting left, we can return From 922bfd3edccb9e9a5594afe85192d4c0c89c6a11 Mon Sep 17 00:00:00 2001 From: NicoRicardi Date: Mon, 12 Feb 2024 10:58:52 +0100 Subject: [PATCH 13/49] previously to deflatten, we check all columns names are strings --- kgforge/core/conversions/dataframe.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/kgforge/core/conversions/dataframe.py b/kgforge/core/conversions/dataframe.py index ea416f9c5..96dc3101b 100644 --- a/kgforge/core/conversions/dataframe.py +++ b/kgforge/core/conversions/dataframe.py @@ -60,6 +60,8 @@ def _from_dataframe(row: Series, na: Union[Any, List[Any]], nesting: str) -> Res new_na = row.replace(na, np.nan) no_na = new_na.dropna() items = list(no_na.items()) + if not all([isinstance(i[0], str) for i in items]): + raise ValueError('Non-string column name!') data = deflatten(items, nesting) return from_json(data, None) @@ -94,7 +96,7 @@ def deflatten(items: List[Tuple[str, Any]], sep: str) -> Dict: if n1 in split: # already done, continue continue k1, v1 = t1_ # all tuples refer to a key-value pair in the DataFrame row - if isinstance(k1, str) and sep in k1: # avoid issue if int or other class + if sep in k1: # avoid issue if int or other class pre, _ = k1.split(sep, maxsplit=1) # getting prefix ('agent.type' => 'agent') if pre in d: # we already have d[pre] from the else statement, i.e. it appeared without sep! raise ValueError(f'Mix of {pre} and {pre}{sep} (e.g. {k1}). Cannot be processed!') @@ -102,7 +104,7 @@ def deflatten(items: List[Tuple[str, Any]], sep: str) -> Dict: pitems = [] # any of type {pre}{sep}{depth2}{sep}{depth3} => {depth2}{sep}{depth3} for n2, t2_ in enumerate(items): k2, v2 = t2_ - if isinstance(k2, str) and k2.startswith(f'{pre}{sep}'): + if k2.startswith(f'{pre}{sep}'): _, post = k2.split(sep, maxsplit=1) # _ ought to be == pre, but we care mainly about what comes after {pre}{sep} pitems.append((post, v2)) split.append(n2) # we do not need to split this item anymore in this specific recursive call From 659bc1d4f757513fd4eb2148696e8eecd545a9df Mon Sep 17 00:00:00 2001 From: Sarah Date: Mon, 12 Feb 2024 15:36:34 +0100 Subject: [PATCH 14/49] Update resource schema (#374) * change signatures to allow for boolean change_schema on update * change_schema implemented for single resource update * refactor batch actions * lint * began batch update schema * change schema many * progress * rm / join * rm useless change * fix * change schema to update schema * update instead of change * example notebook for schema method, todo update * notebook example with update * lint * improve notebook * fix one test * keep unconstrained schema only for update endpoint else _ * same url building in one and many * add timeout * schema id optional in update * rename local parse * rename keep_unconstrained to use_unconstrained_id * rm extra docstring param --- .../use-cases/BBP KG Schema changes.ipynb | 554 ++++++++++++++ kgforge/core/archetypes/read_only_store.py | 2 +- kgforge/core/archetypes/store.py | 2 +- kgforge/core/commons/exceptions.py | 4 + kgforge/core/commons/execution.py | 109 ++- .../specializations/stores/bluebrain_nexus.py | 258 ++++--- .../specializations/stores/nexus/service.py | 723 ++++++++++++------ .../stores/test_bluebrain_nexus.py | 2 +- 8 files changed, 1276 insertions(+), 378 deletions(-) create mode 100644 examples/notebooks/use-cases/BBP KG Schema changes.ipynb diff --git a/examples/notebooks/use-cases/BBP KG Schema changes.ipynb b/examples/notebooks/use-cases/BBP KG Schema changes.ipynb new file mode 100644 index 000000000..e66bb69cc --- /dev/null +++ b/examples/notebooks/use-cases/BBP KG Schema changes.ipynb @@ -0,0 +1,554 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 10, + "id": "b14744df-3567-40f3-bb0c-06c6767ab695", + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "import json\n", + "\n", + "from kgforge.core import KnowledgeGraphForge\n", + "from kgforge.specializations.resources import Dataset" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "72596414-c9ac-4312-a621-5bd4fdc3477b", + "metadata": {}, + "outputs": [ + { + "name": "stdin", + "output_type": "stream", + "text": [ + " ········\n" + ] + } + ], + "source": [ + "import getpass\n", + "TOKEN = getpass.getpass()" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "c124caae-b9ae-4eb4-8d8e-bc437d28d3e6", + "metadata": {}, + "outputs": [], + "source": [ + "BUCKET = \"dke/kgforge\"\n", + "\n", + "forge = KnowledgeGraphForge(\"../use-cases/prod-forge-nexus.yml\",\n", + " bucket=BUCKET,\n", + " token=TOKEN\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "a185f986-e008-4f0a-9447-df10e4c30bb9", + "metadata": {}, + "source": [ + "# Retrieve 10 unconstrained entities" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "29bceff6-d7b4-4fda-9cc3-fe1923c0f865", + "metadata": {}, + "outputs": [], + "source": [ + "def make_id(i):\n", + " return f\"{forge._store.endpoint}/resources/{forge._store.bucket}/_/dummy_resource_{i}\"\n", + "\n", + "resources = [forge.retrieve(make_id(i)) for i in range(10)]" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "72c07da6-1f6b-4251-b552-9d5f12fa40a9", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "10" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(resources)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "f3f2512d-4a1c-4c56-8cce-ea53a991d76d", + "metadata": {}, + "outputs": [], + "source": [ + "def cs(res): return [e._store_metadata._constrainedBy for e in res]" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "fc675bd3-2e7c-4de1-b3dc-041215a1a0c3", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json']" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cs(resources)" + ] + }, + { + "cell_type": "markdown", + "id": "e79f1807-dbfa-4cca-ab08-4809c9962517", + "metadata": {}, + "source": [ + "## 1.a. Constraint using _store.update_schema" + ] + }, + { + "cell_type": "markdown", + "id": "cc361f70-c8c9-4ab8-8ed5-932c3a1bf717", + "metadata": {}, + "source": [ + "### Multiple" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "5ed305ef-16d2-42eb-8818-ec68674afceb", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 10\n", + " _update_schema_many\n", + " True\n" + ] + } + ], + "source": [ + "e = forge._store.update_schema(resources, schema_id=\"https://neuroshapes.org/dash/entity\")" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "bf330be7-b5be-4ea5-9249-d2926f5481b3", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity']" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cs(resources)" + ] + }, + { + "cell_type": "markdown", + "id": "aad27794-ddbe-4e58-8c5f-76a799b1e15c", + "metadata": {}, + "source": [ + "### One" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "fcb99113-3a3e-4e8f-b98e-d127d04e4e6a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _update_schema_one\n", + " True\n" + ] + } + ], + "source": [ + "e = forge._store.update_schema(resources[0], schema_id='https://bluebrain.github.io/nexus/schemas/unconstrained.json')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "da104ef9-63cf-49d2-b296-6506b6bbf4de", + "metadata": {}, + "outputs": [], + "source": [ + "cs(resources)" + ] + }, + { + "cell_type": "markdown", + "id": "d10b21d5-212b-48cc-b4a2-7ef2f739b2ed", + "metadata": {}, + "source": [ + "## 1.b Delete schemas using _store.delete_schema (equivalent to constraining by unconstrained.json)" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "410896b1-2997-4cdb-9af5-fdb4a95fb7de", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 10\n", + " _update_schema_many\n", + " True\n" + ] + } + ], + "source": [ + "e = forge._store.delete_schema(resources)" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "030a7cc6-e272-43b7-9401-c288684dbfb8", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json']" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cs(resources)" + ] + }, + { + "cell_type": "markdown", + "id": "551f3fdc-4760-4c6b-861b-6ac085f27e00", + "metadata": {}, + "source": [ + "## 2.a Constraint using the update method" + ] + }, + { + "cell_type": "markdown", + "id": "0a5b0ebd-3037-4302-a774-33c4cd6a1767", + "metadata": {}, + "source": [ + "### Multiple" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "c0c14efd-cc49-489c-81ca-d5614b25ca34", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 10\n", + " _update_many\n", + " True\n" + ] + } + ], + "source": [ + "for r in resources:\n", + " r._synchronized = False\n", + "\n", + "e = forge.update(resources, schema_id=\"https://neuroshapes.org/dash/entity\")" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "e97e4261-2dcd-4a88-a189-a137ee7c207d", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity',\n", + " 'https://neuroshapes.org/dash/entity']" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cs(resources)" + ] + }, + { + "cell_type": "markdown", + "id": "7e3b7dc4-e39f-4003-b974-1c877ad6a47c", + "metadata": {}, + "source": [ + "## 2.b Delete schemas using update method" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "211eeb24-4c6f-469c-85fc-04faa4bc77fc", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 10\n", + " _update_many\n", + " True\n" + ] + } + ], + "source": [ + "for r in resources:\n", + " r._synchronized = False\n", + "\n", + "e = forge.update(resources, schema_id='https://bluebrain.github.io/nexus/schemas/unconstrained.json')" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "7ce6cb5a-e6fc-4a6f-a707-3c1781354d3d", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json']" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cs(resources)" + ] + }, + { + "cell_type": "markdown", + "id": "796e572d-4577-44ab-8862-6145cb000124", + "metadata": {}, + "source": [ + "### One" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "90ffe938-dcdd-4b85-92eb-65362855cf94", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _update_one\n", + " True\n" + ] + } + ], + "source": [ + "resources[0]._synchronized = False\n", + "forge.update(resources[0], schema_id=\"https://neuroshapes.org/dash/entity\")" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "93259b3c-9f84-4b01-bc5b-dafd7bc7c94d", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['https://neuroshapes.org/dash/entity',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json']" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cs(resources)" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "b55e6972-714c-4468-9195-544ec3af0213", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _update_one\n", + " True\n" + ] + } + ], + "source": [ + "resources[0]._synchronized = False\n", + "forge.update(resources[0], schema_id=\"https://bluebrain.github.io/nexus/schemas/unconstrained.json\")" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "id": "2c0bb710-e39d-480c-be19-f48c9aaff3cc", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", + " 'https://bluebrain.github.io/nexus/schemas/unconstrained.json']" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cs(resources)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "forge_venv", + "language": "python", + "name": "venv" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.17" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/kgforge/core/archetypes/read_only_store.py b/kgforge/core/archetypes/read_only_store.py index a0b4053e8..ac147d7ac 100644 --- a/kgforge/core/archetypes/read_only_store.py +++ b/kgforge/core/archetypes/read_only_store.py @@ -72,7 +72,7 @@ def get_context_prefix_vocab(self) -> Tuple[Optional[Dict], Optional[Dict], Opti @abstractmethod def retrieve( - self, id_: str, version: Optional[Union[int, str]], cross_bucket: bool = False, **params + self, id_: str, version: Optional[Union[int, str]], cross_bucket: bool, **params ) -> Optional[Resource]: # POLICY Should notify of failures with exception RetrievalError including a message. # POLICY Resource _store_metadata should be set using wrappers.dict.wrap_dict(). diff --git a/kgforge/core/archetypes/store.py b/kgforge/core/archetypes/store.py index 5898b2134..473a2fc58 100644 --- a/kgforge/core/archetypes/store.py +++ b/kgforge/core/archetypes/store.py @@ -160,7 +160,7 @@ def _upload_one(self, path: Path, content_type: str) -> Any: # CR[U]D. def update( - self, data: Union[Resource, List[Resource]], schema_id: Optional[str] + self, data: Union[Resource, List[Resource]], schema_id: Optional[str] = None ) -> None: # Replace None by self._update_many to switch to optimized bulk update. run( diff --git a/kgforge/core/commons/exceptions.py b/kgforge/core/commons/exceptions.py index 970c04ac9..3aca201e3 100644 --- a/kgforge/core/commons/exceptions.py +++ b/kgforge/core/commons/exceptions.py @@ -64,6 +64,10 @@ class UpdatingError(RunException): pass +class SchemaUpdateError(RunException): + pass + + class TaggingError(RunException): pass diff --git a/kgforge/core/commons/execution.py b/kgforge/core/commons/execution.py index d0eee24db..b3d02ffdf 100644 --- a/kgforge/core/commons/execution.py +++ b/kgforge/core/commons/execution.py @@ -19,8 +19,12 @@ import requests from kgforge.core.resource import Resource -from kgforge.core.commons.actions import (Action, Actions, collect_lazy_actions, - execute_lazy_actions) +from kgforge.core.commons.actions import ( + Action, + Actions, + collect_lazy_actions, + execute_lazy_actions, +) from kgforge.core.commons.exceptions import NotSupportedError, RunException @@ -58,14 +62,20 @@ def wrapper(*args, **kwargs): if type(self).__name__ == class_name: forge = self else: - forge = next(x for x in self.__dict__.values() if type(x).__name__ == class_name) + forge = next( + x for x in self.__dict__.values() if type(x).__name__ == class_name + ) debug = forge._debug try: return fun(*args, **kwargs) except Exception as e: stack = traceback.extract_stack() - it = (x for x in stack if x.name == "wrapper" and x.filename == stack[-1].filename) + it = ( + x + for x in stack + if x.name == "wrapper" and x.filename == stack[-1].filename + ) next(it) try: next(it) @@ -77,8 +87,7 @@ def wrapper(*args, **kwargs): if called_once and not debug: tb = e.__traceback__ fs = traceback.extract_tb(tb)[-1] - print(f" {fs.name}" - f"\n {type(e).__name__}: {e}\n") + print(f" {fs.name}" f"\n {type(e).__name__}: {e}\n") return None raise @@ -87,8 +96,13 @@ def wrapper(*args, **kwargs): # @functools.singledispatchmethod is introduced in Python 3.8. -def dispatch(data: Union[Resource, List[Resource]], fun_many: Callable, - fun_one: Callable, *args, **params) -> Any: +def dispatch( + data: Union[Resource, List[Resource]], + fun_many: Callable, + fun_one: Callable, + *args, + **params, +) -> Any: # POLICY The method calling this function should be decorated with execution.catch(). if isinstance(data, List) and all(isinstance(x, Resource) for x in data): return fun_many(data, *args, **params) @@ -99,7 +113,7 @@ def dispatch(data: Union[Resource, List[Resource]], fun_many: Callable, def catch_http_error( - r: requests.Response, error_to_throw: Type[BaseException], error_message_formatter + r: requests.Response, error_to_throw: Type[BaseException], error_message_formatter ): try: r.raise_for_status() @@ -107,34 +121,49 @@ def catch_http_error( raise error_to_throw(error_message_formatter(e)) from e -def format_message(msg): - return "".join([msg[0].lower(), msg[1:-1], msg[-1] if msg[-1] != "." else ""]) +def run( + fun_one: Callable, + fun_many: Optional[Callable], + data: Union[Resource, List[Resource]], + exception: Type[RunException], + id_required: bool = False, + required_synchronized: Optional[bool] = None, + execute_actions: bool = False, + monitored_status: Optional[str] = None, + catch_exceptions: bool = True, + **kwargs, +) -> None: - -def error_message(error: Union[requests.HTTPError, Dict]) -> str: - try: - error_text = error.response.text() if isinstance(error, requests.HTTPError) else str(error) - return format_message(error_text) - except Exception: - return format_message(str(error)) - - -def run(fun_one: Callable, fun_many: Optional[Callable], data: Union[Resource, List[Resource]], - exception: Type[RunException], id_required: bool = False, - required_synchronized: Optional[bool] = None, execute_actions: bool = False, - monitored_status: Optional[str] = None, catch_exceptions: bool = True, **kwargs) -> None: # POLICY Should be called for operations on resources where recovering from errors is needed. if isinstance(data, List) and all(isinstance(x, Resource) for x in data): if fun_many is None: - _run_many(fun_one, data, exception, id_required, required_synchronized, - execute_actions, monitored_status, catch_exceptions, **kwargs) + _run_many( + fun_one, + data, + exception, + id_required, + required_synchronized, + execute_actions, + monitored_status, + catch_exceptions, + **kwargs, + ) else: fun_many(data, **kwargs) actions = Actions.from_resources(data) print(actions) elif isinstance(data, Resource): - _run_one(fun_one, data, exception, id_required, required_synchronized, execute_actions, - monitored_status, catch_exceptions, **kwargs) + _run_one( + fun_one, + data, + exception, + id_required, + required_synchronized, + execute_actions, + monitored_status, + catch_exceptions, + **kwargs, + ) action = data._last_action print(action) else: @@ -146,15 +175,27 @@ def _run_many(fun: Callable, resources: List[Resource], *args, **kwargs) -> None _run_one(fun, x, *args, **kwargs) -def _run_one(fun: Callable, resource: Resource, exception: Type[RunException], id_required: bool, - required_synchronized: Optional[bool], execute_actions: bool, - monitored_status: Optional[str], catch_exceptions: bool, **kwargs) -> None: +def _run_one( + fun: Callable, + resource: Resource, + exception: Type[RunException], + id_required: bool, + required_synchronized: Optional[bool], + execute_actions: bool, + monitored_status: Optional[str], + catch_exceptions: bool, + **kwargs, +) -> None: + try: if id_required and not hasattr(resource, "id"): raise exception("resource should have an id") synchronized = resource._synchronized - if required_synchronized is not None and synchronized is not required_synchronized: + if ( + required_synchronized is not None + and synchronized is not required_synchronized + ): be_or_not_be = "be" if required_synchronized is True else "not be" raise exception(f"resource should {be_or_not_be} synchronized") @@ -162,7 +203,9 @@ def _run_one(fun: Callable, resource: Resource, exception: Type[RunException], i if execute_actions: execute_lazy_actions(resource, lazy_actions) elif lazy_actions: - raise exception("resource has lazy actions which need to be executed before") + raise exception( + "resource has lazy actions which need to be executed before" + ) result = fun(resource, **kwargs) except Exception as e: diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index 8ec0714d5..5d330b235 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -50,6 +50,7 @@ TaggingError, UpdatingError, UploadingError, + SchemaUpdateError, ) from kgforge.core.commons.execution import run, not_supported, catch_http_error from kgforge.core.commons.files import is_valid_url @@ -133,18 +134,19 @@ def register_callback(task: Task): verified = self.service.verify( resources, - self._register_many.__name__, - RegistrationError, + function_name=self._register_many.__name__, + exception=RegistrationError, id_required=False, required_synchronized=False, execute_actions=True, ) params_register = copy.deepcopy(self.service.params.get("register", {})) + self.service.batch_request( - verified, - BatchAction.CREATE, - register_callback, - RegistrationError, + resources=verified, + action=BatchAction.CREATE, + callback=register_callback, + error_type=RegistrationError, schema_id=schema_id, params=params_register, ) @@ -160,12 +162,15 @@ def _register_one(self, resource: Resource, schema_id: str) -> None: context_resolver=self.service.resolve_context ) - schema = quote_plus(schema_id) if schema_id else "_" - url_base = f"{self.service.url_resources}/{schema}" params_register = copy.deepcopy(self.service.params.get("register", None)) identifier = resource.get_identifier() + if identifier: - url = f"{url_base}/{quote_plus(identifier)}" + + url = Service.add_schema_and_id_to_endpoint( + self.service.url_resources, schema_id=schema_id, resource_id=identifier + ) + response = requests.put( url, headers=self.service.headers, @@ -174,7 +179,11 @@ def _register_one(self, resource: Resource, schema_id: str) -> None: timeout=REQUEST_TIMEOUT ) else: - url = url_base + + url = Service.add_schema_and_id_to_endpoint( + self.service.url_resources, schema_id=schema_id, resource_id=None + ) + response = requests.post( url, headers=self.service.headers, @@ -244,6 +253,30 @@ def _upload_one(self, path: Path, content_type: str) -> Dict: # C[R]UD. + @staticmethod + def _local_url_parse(id_value, version_params): + parsed_id = urlparse(id_value) + fragment = None + query_params = None + # urlparse is not separating fragment and query params when the latter are put after a fragment + if parsed_id.fragment is not None and "?" in str(parsed_id.fragment): + fragment_parts = urlparse(parsed_id.fragment) + query_params = parse_qs(fragment_parts.query) + fragment = fragment_parts.path + elif parsed_id.fragment is not None and parsed_id.fragment != "": + fragment = parsed_id.fragment + elif parsed_id.query is not None and parsed_id.query != "": + query_params = parse_qs(parsed_id.query) + + if version_params is not None: + if not isinstance(query_params, dict): + query_params = {} + query_params.update(version_params) + + id_without_query = f"{parsed_id.scheme}://{parsed_id.netloc}{parsed_id.path}{'#' + fragment if fragment is not None else ''}" + + return id_without_query, query_params + def retrieve( self, id_: str, version: Optional[Union[int, str]], cross_bucket: bool = False, **params ) -> Optional[Resource]: @@ -258,7 +291,7 @@ def retrieve( (default: True) :return: Resource """ - version_params = None + if version is not None: if isinstance(version, int): version_params = {"rev": version} @@ -266,36 +299,23 @@ def retrieve( version_params = {"tag": version} else: raise RetrievalError("incorrect 'version'") - parsed_id = urlparse(id_) - fragment = None - query_params = None - # urlparse is not separating fragment and query params when the latter are put after a fragment - if parsed_id.fragment is not None and "?" in str(parsed_id.fragment): - fragment_parts = urlparse(parsed_id.fragment) - query_params = parse_qs(fragment_parts.query) - fragment = fragment_parts.path - elif parsed_id.fragment is not None and parsed_id.fragment != "": - fragment = parsed_id.fragment - elif parsed_id.query is not None and parsed_id.query != "": - query_params = parse_qs(parsed_id.query) - - if version_params is not None: - if not isinstance(query_params, dict): - query_params = {} - query_params.update(version_params) + else: + version_params = None - id_without_query = f"{parsed_id.scheme}://{parsed_id.netloc}{parsed_id.path}{'#' + fragment if fragment is not None else ''}" - url_base = ( - self.service.url_resolver if cross_bucket else self.service.url_resources + id_without_query, query_params = BlueBrainNexus._local_url_parse( + id_value=id_, version_params=version_params ) - url_resource = "/".join((url_base, "_", quote_plus(id_without_query))) + + url_base = self.service.url_resolver if cross_bucket else self.service.url_resources + retrieve_source = params.get('retrieve_source', True) - if retrieve_source and not cross_bucket: - url_source = "/".join((url_resource, "source")) - url = url_source - else: - url = url_resource + url_resource = Service.add_schema_and_id_to_endpoint( + url_base, schema_id=None, resource_id=id_without_query + ) + + url = f"{url_resource}/source" if retrieve_source and not cross_bucket else url_resource + try: response = requests.get( url, params=query_params, headers=self.service.headers, @@ -304,43 +324,40 @@ def retrieve( catch_http_error_nexus(response, RetrievalError) except RetrievalError as er: + # without org and proj, vs with nexus_path = f"{self.service.endpoint}/resources/" if cross_bucket else self.service.url_resources # Try to use the id as it was given - if id_.startswith(nexus_path): - url_resource = id_without_query + if not id_.startswith(nexus_path): + raise er - url = "/".join((id_without_query, "source")) \ - if retrieve_source and not cross_bucket \ - else id_without_query + url_resource = id_without_query - response = requests.get( - url, params=query_params, headers=self.service.headers, - timeout=REQUEST_TIMEOUT - ) - catch_http_error_nexus(response, RetrievalError) - else: - raise er - # finally: - if retrieve_source and not cross_bucket: + url = f"{id_without_query}/source" if retrieve_source and not cross_bucket \ + else id_without_query - response_metadata = requests.get( - url_resource, params=query_params, headers=self.service.headers, - timeout=REQUEST_TIMEOUT + response = requests.get( + url, params=query_params, headers=self.service.headers, timeout=REQUEST_TIMEOUT ) - catch_http_error_nexus(response_metadata, RetrievalError) + catch_http_error_nexus(response, RetrievalError) - elif retrieve_source and cross_bucket and response and ('_self' in response.json()): + if not retrieve_source: + response_metadata = True # when retrieve_source is False + else: + if not cross_bucket: + u = url_resource + else: + if response and ('_self' in response.json()): + res_self = response.json()["_self"] + u = f"{res_self}/source" + else: + print("TODO uncovered case") response_metadata = requests.get( - "/".join([response.json()["_self"], "source"]), params=query_params, - headers=self.service.headers, timeout=REQUEST_TIMEOUT + u, params=query_params, headers=self.service.headers, timeout=REQUEST_TIMEOUT ) catch_http_error_nexus(response, RetrievalError) - else: - response_metadata = True # when retrieve_source is False - if response and response_metadata: try: data = response.json() @@ -365,6 +382,8 @@ def retrieve( ) return resource + return None + def _retrieve_filename(self, id_: str) -> Tuple[str, str]: response = requests.get(id_, headers=self.service.headers, timeout=REQUEST_TIMEOUT) catch_http_error_nexus(response, DownloadingError) @@ -401,7 +420,6 @@ async def _download(url, path, store_metadata, bucket, semaphore, session): async with semaphore: params_download = copy.deepcopy(self.service.params.get("download", {})) async with session.get(url, params=params_download) as response: - catch_http_error_nexus( response, DownloadingError, error_message_formatter=lambda e: @@ -460,6 +478,7 @@ def _prepare_download_one( else: org = self.service.organisation project = self.service.project + file_id = url.split("/")[-1] file_id = unquote(file_id) if len(file_id) < 1: @@ -470,9 +489,10 @@ def _prepare_download_one( # this is a hack since _self and _id have the same uuid url_base = "/".join( ( - self.service.url_base_files, - quote_plus(org), - quote_plus(project), + self.service.make_endpoint( + endpoint=self.service.endpoint, endpoint_type="files", + organisation=org, project=project + ), quote_plus(file_id), ) ) @@ -480,7 +500,7 @@ def _prepare_download_one( # CR[U]D. - def update(self, data: Union[Resource, List[Resource]], schema_id: str) -> None: + def update(self, data: Union[Resource, List[Resource]], schema_id: str = None) -> None: run( self._update_one, self._update_many, @@ -497,19 +517,20 @@ def _update_many(self, resources: List[Resource], schema_id: str) -> None: update_callback = self.service.default_callback(self._update_many.__name__) verified = self.service.verify( resources, - self._update_many.__name__, - UpdatingError, + function_name=self._update_many.__name__, + exception=UpdatingError, id_required=True, required_synchronized=False, execute_actions=True, ) params_update = copy.deepcopy(self.service.params.get("update", {})) self.service.batch_request( - verified, - BatchAction.UPDATE, - update_callback, - UpdatingError, + resources=verified, + action=BatchAction.UPDATE, + callback=update_callback, + error_type=UpdatingError, params=params_update, + schema_id=schema_id ) def _update_one(self, resource: Resource, schema_id: str) -> None: @@ -522,7 +543,7 @@ def _update_one(self, resource: Resource, schema_id: str) -> None: metadata_context=None, context_resolver=self.service.resolve_context ) - url, params = self.service._prepare_uri(resource, schema_id) + url, params = self.service._prepare_uri(resource, schema_id, use_unconstrained_id=True) params_update = copy.deepcopy(self.service.params.get("update", {})) params_update.update(params) @@ -537,6 +558,56 @@ def _update_one(self, resource: Resource, schema_id: str) -> None: catch_http_error_nexus(response, UpdatingError) self.service.sync_metadata(resource, response.json()) + def delete_schema(self, resource: Union[Resource, List[Resource]]): + return self.update_schema(resource, schema_id=Service.UNCONSTRAINED_SCHEMA) + + def _update_schema_one(self, resource: Resource, schema_id: str): + + url = Service.add_schema_and_id_to_endpoint( + endpoint=self.service.url_resources, schema_id=schema_id, resource_id=resource.id + ) + response = requests.put( + url=f"{url}/update-schema", headers=self.service.headers, timeout=REQUEST_TIMEOUT + ) + catch_http_error_nexus(response, SchemaUpdateError) + self.service.sync_metadata(resource, response.json()) + + def _update_schema_many(self, resources: List[Resource], schema_id: str): + + update_schema_callback = self.service.default_callback(self._update_schema_many.__name__) + + verified = self.service.verify( + resources, + function_name=self._update_schema_many.__name__, + exception=SchemaUpdateError, + id_required=True, + required_synchronized=True, + execute_actions=False + ) + + self.service.batch_request( + resources=verified, + action=BatchAction.UPDATE_SCHEMA, + callback=update_schema_callback, + error_type=SchemaUpdateError, + schema_id=schema_id, + ) + + def update_schema(self, data: Union[Resource, List[Resource]], schema_id: str): + + if schema_id is None: + raise Exception("Missing schema id value") + + run( + self._update_schema_one, + self._update_schema_many, + data, + id_required=True, + required_synchronized=True, + exception=SchemaUpdateError, + schema_id=schema_id, + ) + def tag(self, data: Union[Resource, List[Resource]], value: str) -> None: run( self._tag_one, @@ -552,18 +623,18 @@ def _tag_many(self, resources: List[Resource], value: str) -> None: tag_callback = self.service.default_callback(self._tag_many.__name__) verified = self.service.verify( resources, - self._tag_many.__name__, - TaggingError, + function_name=self._tag_many.__name__, + exception=TaggingError, id_required=True, required_synchronized=True, execute_actions=False, ) params_tag = copy.deepcopy(self.service.params.get("tag", {})) self.service.batch_request( - verified, - BatchAction.TAG, - tag_callback, - TaggingError, + resources=verified, + action=BatchAction.TAG, + callback=tag_callback, + error_type=TaggingError, tag=value, params=params_tag, ) @@ -602,18 +673,18 @@ def _deprecate_many(self, resources: List[Resource]) -> None: ) verified = self.service.verify( resources, - self._deprecate_many.__name__, - DeprecationError, + function_name=self._deprecate_many.__name__, + exception=DeprecationError, id_required=True, required_synchronized=True, execute_actions=False, ) params_deprecate = copy.deepcopy(self.service.params.get("deprecate", {})) self.service.batch_request( - verified, - BatchAction.DEPRECATE, - deprecate_callback, - DeprecationError, + resources=verified, + action=BatchAction.DEPRECATE, + callback=deprecate_callback, + error_type=DeprecationError, params=params_deprecate, ) @@ -659,7 +730,7 @@ def search( includes = params.get("includes", None) excludes = params.get("excludes", None) search_endpoint = params.get( - "search_endpoint", Service.SPARQL_ENDPOINT_TYPE # default search endpoint is sparql + "search_endpoint", Service.SPARQL_ENDPOINT_TYPE # default search endpoint is sparql ) valid_endpoints = [ Service.SPARQL_ENDPOINT_TYPE, Service.ELASTIC_ENDPOINT_TYPE, @@ -688,11 +759,12 @@ def search( raise ValueError( "Field inclusion and exclusion are not supported when using SPARQL" ) - project_filter = "" if bucket: project_filter = f"Filter (?_project = <{'/'.join([self.endpoint, 'projects', bucket])}>)" elif not cross_bucket: project_filter = f"Filter (?_project = <{'/'.join([self.endpoint, 'projects', self.organisation, self.project])}>)" + else: + project_filter = "" query_statements, query_filters = SPARQLQueryBuilder.build( schema=None, resolvers=resolvers, context=self.model_context(), filters=filters @@ -730,7 +802,11 @@ def search( params_retrieve = copy.deepcopy(self.service.params.get("retrieve", {})) params_retrieve['retrieve_source'] = retrieve_source results = self.service.batch_request( - resources, BatchAction.FETCH, None, QueryingError, params=params_retrieve + resources=resources, + action=BatchAction.FETCH, + callback=None, + error_type=QueryingError, + params=params_retrieve ) resources = [] for result in results: @@ -755,7 +831,7 @@ def search( raise ValueError(e) from e finally: self.service.synchronize_resource( - resource, store_metadata_response, self.search.__name__, True, False + resource, store_metadata_response, self.search.__name__, True, True ) resources.append(resource) return resources @@ -842,7 +918,7 @@ def _sparql(self, query: str, view: str) -> List[Resource]: endpoint = self.service.sparql_endpoint["endpoint"] \ if view is None \ - else self.service.make_endpoint(view, endpoint_type="sparql") + else self.service.make_query_endpoint_self(view, endpoint_type="sparql") response = requests.post( endpoint, @@ -861,7 +937,7 @@ def _elastic(self, query: str, view: Optional[str]) -> List[Resource]: endpoint = self.service.elastic_endpoint["endpoint"] \ if view is None \ - else self.service.make_endpoint(view, endpoint_type="elastic") + else self.service.make_query_endpoint_self(view, endpoint_type="elastic") response = requests.post( endpoint, diff --git a/kgforge/specializations/stores/nexus/service.py b/kgforge/specializations/stores/nexus/service.py index 014e41456..ec2a17f29 100644 --- a/kgforge/specializations/stores/nexus/service.py +++ b/kgforge/specializations/stores/nexus/service.py @@ -29,6 +29,7 @@ from aiohttp import ClientSession, hdrs from requests import HTTPError +from kgforge.core.commons.execution import not_supported from kgforge.core.commons.constants import DEFAULT_REQUEST_TIMEOUT from kgforge.core.resource import Resource from kgforge.core.commons.actions import ( @@ -37,8 +38,7 @@ execute_lazy_actions, LazyAction, ) -from kgforge.core.commons.exceptions import ConfigurationError -from kgforge.core.commons.execution import error_message, format_message +from kgforge.core.commons.exceptions import ConfigurationError, RunException from kgforge.core.commons.context import Context from kgforge.core.conversions.rdf import ( _from_jsonld_one, @@ -57,6 +57,7 @@ class BatchAction(Enum): TAG = "tag" UPLOAD = "upload" DOWNLOAD = "download" + UPDATE_SCHEMA = "update_schema" BatchResult = namedtuple("BatchResult", ["resource", "response"]) @@ -74,30 +75,32 @@ class Service: DEFAULT_ES_INDEX_FALLBACK = f"{NEXUS_NAMESPACE_FALLBACK}defaultElasticSearchIndex" DEPRECATED_PROPERTY_FALLBACK = f"{NEXUS_NAMESPACE_FALLBACK}deprecated" PROJECT_PROPERTY_FALLBACK = f"{NEXUS_NAMESPACE_FALLBACK}project" - UNCONSTRAINED_SCHEMA = "https://bluebrain.github.io/nexus/schemas/unconstrained.json" + UNCONSTRAINED_SCHEMA = ( + "https://bluebrain.github.io/nexus/schemas/unconstrained.json" + ) SPARQL_ENDPOINT_TYPE = "sparql" ELASTIC_ENDPOINT_TYPE = "elastic" def __init__( - self, - endpoint: str, - org: str, - prj: str, - token: str, - model_context: Context, - max_connection: int, - searchendpoints: Dict, - store_context: str, - store_local_context: str, - namespace: str, - project_property: str, - deprecated_property: bool, - content_type: str, - accept: str, - files_upload_config: Dict, - files_download_config: Dict, - **params, + self, + endpoint: str, + org: str, + prj: str, + token: str, + model_context: Context, + max_connection: int, + searchendpoints: Dict, + store_context: str, + store_local_context: str, + namespace: str, + project_property: str, + deprecated_property: bool, + content_type: str, + accept: str, + files_upload_config: Dict, + files_download_config: Dict, + **params, ): nexus.config.set_environment(endpoint) self.endpoint = endpoint @@ -112,8 +115,18 @@ def __init__( self.namespace = namespace self.project_property = project_property self.store_metadata_keys = [ - "_constrainedBy", "_createdAt", "_createdBy", "_deprecated", "_incoming", "_outgoing", - "_project", "_rev", "_schemaProject", "_self", "_updatedAt", "_updatedBy" + "_constrainedBy", + "_createdAt", + "_createdBy", + "_deprecated", + "_incoming", + "_outgoing", + "_project", + "_rev", + "_schemaProject", + "_self", + "_updatedAt", + "_updatedBy", ] self.deprecated_property = deprecated_property @@ -124,27 +137,35 @@ def __init__( self.headers = {"Content-Type": content_type, "Accept": accept} sparql_config = searchendpoints.get("sparql", None) if searchendpoints else None - elastic_config = searchendpoints.get("elastic", None) if searchendpoints else None + elastic_config = ( + searchendpoints.get("elastic", None) if searchendpoints else None + ) self.headers_sparql = { - "Content-Type": sparql_config["Content-Type"] - if sparql_config and "Content-Type" in sparql_config - else "text/plain", - "Accept": sparql_config["Accept"] - if sparql_config and "Accept" in sparql_config - else "application/sparql-results+json", + "Content-Type": ( + sparql_config["Content-Type"] + if sparql_config and "Content-Type" in sparql_config + else "text/plain" + ), + "Accept": ( + sparql_config["Accept"] + if sparql_config and "Accept" in sparql_config + else "application/sparql-results+json" + ), } self.headers_elastic = { - "Content-Type": elastic_config["Content-Type"] - if elastic_config and "Content-Type" in elastic_config - else "application/json", - "Accept": elastic_config["Accept"] - if elastic_config and "Accept" in elastic_config - else "application/json", - } - self.headers_upload = { - "Accept": files_upload_config.pop("Accept"), + "Content-Type": ( + elastic_config["Content-Type"] + if elastic_config and "Content-Type" in elastic_config + else "application/json" + ), + "Accept": ( + elastic_config["Accept"] + if elastic_config and "Accept" in elastic_config + else "application/json" + ), } + self.headers_upload = {"Accept": files_upload_config.pop("Accept")} self.headers_download = {"Accept": files_download_config.pop("Accept")} if token is not None: @@ -156,16 +177,10 @@ def __init__( self.headers_download["Authorization"] = "Bearer " + token self.context = Context(self.get_project_context()) - self.url_base_files = "/".join((self.endpoint, "files")) - self.url_files = "/".join( - (self.url_base_files, quote_plus(org), quote_plus(prj)) - ) - self.url_resources = "/".join( - (self.endpoint, "resources", quote_plus(org), quote_plus(prj)) - ) - self.url_resolver = "/".join( - (self.endpoint, "resolvers", quote_plus(org), quote_plus(prj)) - ) + self.url_files = Service.make_endpoint(self.endpoint, "files", org, prj) + self.url_resources = Service.make_endpoint(self.endpoint, "resources", org, prj) + self.url_resolver = Service.make_endpoint(self.endpoint, "resolvers", org, prj) + self.metadata_context = Context( recursive_resolve( self.store_context, self.resolve_context, already_loaded=[] @@ -195,18 +210,24 @@ def __init__( ) self.sparql_endpoint = { - "endpoint": self.make_endpoint(sparql_view, Service.SPARQL_ENDPOINT_TYPE) + "endpoint": self.make_query_endpoint_self( + sparql_view, Service.SPARQL_ENDPOINT_TYPE + ) } self.elastic_endpoint = { - "endpoint": self.make_endpoint(elastic_view, Service.ELASTIC_ENDPOINT_TYPE) + "endpoint": self.make_query_endpoint_self( + elastic_view, Service.ELASTIC_ENDPOINT_TYPE + ) } self.elastic_endpoint["view"] = LazyAction( nexus.views.fetch, quote_plus(org), quote_plus(prj), - es_mapping if es_mapping else elastic_view, # Todo consider using Dict for es_mapping + ( + es_mapping if es_mapping else elastic_view + ), # Todo consider using Dict for es_mapping ) self.elastic_endpoint["default_str_keyword_field"] = default_str_keyword_field @@ -218,7 +239,30 @@ def __init__( pass @staticmethod - def make_query_endpoint(base, view, endpoint_type, organisation, project) -> str: + def make_endpoint( + endpoint: str, endpoint_type: str, organisation: str, project: str + ): + return "/".join( + (endpoint, endpoint_type, quote_plus(organisation), quote_plus(project)) + ) + + @staticmethod + def add_schema_and_id_to_endpoint( + endpoint: str, schema_id: Optional[str], resource_id: Optional[str] + ): + schema = quote_plus(schema_id) if schema_id else "_" + + to_join = [endpoint, schema] + + if resource_id: + to_join.append(quote_plus(resource_id)) + + return "/".join(to_join) + + @staticmethod + def make_query_endpoint( + endpoint, view, endpoint_type, organisation, project + ) -> str: if endpoint_type == Service.SPARQL_ENDPOINT_TYPE: last_url_component = "sparql" @@ -227,30 +271,24 @@ def make_query_endpoint(base, view, endpoint_type, organisation, project) -> str else: raise ValueError(f"Unknown endpoint type {endpoint_type}") - return "/".join( - ( - base, - "views", - quote_plus(organisation), - quote_plus(project), - quote_plus(view), - last_url_component, - ) - ) + view_base = Service.make_endpoint(endpoint, "views", organisation, project) + + return "/".join((view_base, quote_plus(view), last_url_component)) - def make_endpoint(self, view: str, endpoint_type: str): + def make_query_endpoint_self(self, view: str, endpoint_type: str): return Service.make_query_endpoint( - base=self.endpoint, view=view, + endpoint=self.endpoint, + view=view, endpoint_type=endpoint_type, organisation=self.organisation, - project=self.project + project=self.project, ) def get_project_context(self) -> Dict: project_data = nexus.projects.fetch(self.organisation, self.project) context = {"@base": project_data["base"], "@vocab": project_data["vocab"]} - for mapping in project_data['apiMappings']: - context[mapping['prefix']] = mapping['namespace'] + for mapping in project_data["apiMappings"]: + context[mapping["prefix"]] = mapping["namespace"] return context def resolve_context(self, iri: str, local_only: Optional[bool] = False) -> Dict: @@ -260,8 +298,16 @@ def resolve_context(self, iri: str, local_only: Optional[bool] = False) -> Dict: context_to_resolve = ( self.store_local_context if iri == self.store_context else iri ) - url = "/".join((self.url_resolver, "_", quote_plus(context_to_resolve))) - response = requests.get(url, headers=self.headers, timeout=Service.REQUEST_TIMEOUT) + + url = Service.add_schema_and_id_to_endpoint( + endpoint=self.url_resolver, + schema_id=None, + resource_id=context_to_resolve, + ) + + response = requests.get( + url, headers=self.headers, timeout=Service.REQUEST_TIMEOUT + ) response.raise_for_status() resource = response.json() except Exception as exc: @@ -269,15 +315,19 @@ def resolve_context(self, iri: str, local_only: Optional[bool] = False) -> Dict: try: context = Context(context_to_resolve) except URLError as exc2: - raise ValueError(f"{context_to_resolve} is not resolvable") from exc2 + raise ValueError( + f"{context_to_resolve} is not resolvable" + ) from exc2 document = context.document["@context"] else: raise ValueError(f"{context_to_resolve} is not resolvable") from exc else: # Make sure context is not deprecated - if '_deprecated' in resource and resource['_deprecated']: - raise ConfigurationError(f"Context {context_to_resolve} exists but was deprecated") + if "_deprecated" in resource and resource["_deprecated"]: + raise ConfigurationError( + f"Context {context_to_resolve} exists but was deprecated" + ) document = json.loads(json.dumps(resource["@context"])) if isinstance(document, list): if self.store_context in document: @@ -288,158 +338,60 @@ def resolve_context(self, iri: str, local_only: Optional[bool] = False) -> Dict: return document def batch_request( - self, - resources: List[Resource], - action: BatchAction, - callback: Callable, - error_type: Callable, - **kwargs, + self, + resources: List[Resource], + action: BatchAction, + callback: Callable, + error_type: RunException, + **kwargs, ) -> Tuple[BatchResults, BatchResults]: + def create_tasks( - semaphore, session, loop, data, batch_action, f_callback, error - ): + semaphore: asyncio.Semaphore, + session: ClientSession, + loop, + data: List, + batch_action: BatchAction, + f_callback: Callable, + error: RunException, + ) -> List[Task]: + + prepare_function_map = { + batch_action.CREATE: BatchRequestHandler.prepare_batch_create, + batch_action.UPDATE: BatchRequestHandler.prepare_batch_update, + batch_action.TAG: BatchRequestHandler.prepare_batch_tag, + batch_action.DEPRECATE: BatchRequestHandler.prepare_batch_deprecate, + batch_action.FETCH: BatchRequestHandler.prepare_batch_fetch, + batch_action.UPDATE_SCHEMA: BatchRequestHandler.prepare_batch_update_schema, + } + futures = [] - schema_id = kwargs.get("schema_id") - schema_id = "_" if schema_id is None else quote_plus(schema_id) - for resource in data: - params = deepcopy(kwargs.get("params", {})) - if batch_action == batch_action.CREATE: - context = self.model_context or self.context - payload = as_jsonld( - resource, - "compacted", - False, - model_context=context, - metadata_context=None, - context_resolver=self.resolve_context - ) - url = f"{self.url_resources}/{schema_id}" - prepared_request = loop.create_task( - queue( - hdrs.METH_POST, - semaphore, - session, - url, - resource, - error, - payload, - params, - ) - ) - if batch_action == batch_action.UPDATE: - url, params_from_resource = self._prepare_uri(resource, schema_id) - params.update(params_from_resource) - - payload = as_jsonld( - resource, - "compacted", - False, - model_context=self.model_context, - metadata_context=None, - context_resolver=self.resolve_context - ) - prepared_request = loop.create_task( - queue( - hdrs.METH_PUT, - semaphore, - session, - url, - resource, - error, - payload, - params, - ) - ) + for resource in data: + params = deepcopy(kwargs.pop("params", {})) - if batch_action == batch_action.TAG: - url, payload, rev_param = self._prepare_tag(resource, kwargs.get("tag")) - params.update(rev_param) - prepared_request = loop.create_task( - queue( - hdrs.METH_POST, - semaphore, - session, - url, - resource, - error, - payload, - params, - ) - ) + prepare_function = prepare_function_map.get(batch_action, None) - if batch_action == batch_action.DEPRECATE: - url, rev_param = self._prepare_uri(resource) - params.update(rev_param) - - prepared_request = loop.create_task( - queue( - hdrs.METH_DELETE, - semaphore, - session, - url, - resource, - error, - params=params, - ) - ) + if prepare_function is None: + raise not_supported() - if batch_action == BatchAction.FETCH: - resource_org, resource_prj = resource._project.split("/")[-2:] - resource_url = "/".join( - ( - self.endpoint, - "resources", - quote_plus(resource_org), - quote_plus(resource_prj), - ) - ) - url = "/".join((resource_url, "_", quote_plus(resource.id))) - if hasattr(resource, "_rev"): - params["rev"] = resource._rev - retrieve_source = params.get("retrieve_source", False) - if retrieve_source: - url = "/".join((url, "source")) - params.pop("retrieve_source") - prepared_request = loop.create_task( - queue(hdrs.METH_GET, semaphore, session, url, resource, error, - params=params) - ) + prepared_request = prepare_function( + service=self, + resource=resource, + semaphore=semaphore, + session=session, + loop=loop, + params=params, + error=error, + **kwargs, + ) if f_callback: prepared_request.add_done_callback(f_callback) - futures.append(prepared_request) - return futures - - async def queue( - method, - semaphore, - session, - url, - resource, - exception, - payload=None, - params=None, - ): - async with semaphore: - return await request( - method, session, url, resource, payload, params, exception - ) - async def request(method, session, url, resource, payload, params, exception): - async with session.request( - method, - url, - headers=self.headers, - data=json.dumps(payload), - params=params, - ) as response: - content = await response.json() - if response.status < 400: - return BatchResult(resource, content) + futures.append(prepared_request) - error = exception(_error_message(content)) - return BatchResult(resource, error) + return futures async def dispatch_action(): semaphore = asyncio.Semaphore(self.max_connection) @@ -452,17 +404,28 @@ async def dispatch_action(): return asyncio.run(dispatch_action()) - def _prepare_tag(self, resource, tag) -> Tuple[str, Dict, Dict]: + def _prepare_tag(self, resource: Resource, tag: str) -> Tuple[str, Dict, Dict]: url, params = self._prepare_uri(resource) - url = "/".join((url, "tags")) + url = f"{url}/tags" data = {"tag": tag} data.update(params) return url, data, params - def _prepare_uri(self, resource, schema_uri=None) -> Tuple[str, Dict]: - schema_id = schema_uri if schema_uri else resource._store_metadata._constrainedBy - schema_id = "_" if schema_id == self.UNCONSTRAINED_SCHEMA or schema_id is None else schema_id - url = "/".join((self.url_resources, quote_plus(schema_id), quote_plus(resource.id))) + def _prepare_uri( + self, + resource: Resource, + schema_uri: Optional[str] = None, + use_unconstrained_id: bool = False, + ) -> Tuple[str, Dict]: + schema_id = schema_uri or resource._store_metadata._constrainedBy + + if schema_id == self.UNCONSTRAINED_SCHEMA and not use_unconstrained_id: + schema_id = None + + url = Service.add_schema_and_id_to_endpoint( + self.url_resources, schema_id, resource_id=resource.id + ) + rev = resource._store_metadata._rev params = {"rev": rev} return url, params @@ -486,12 +449,12 @@ def sync_metadata(self, resource: Resource, result: Dict) -> None: resource._store_metadata = wrap_dict(metadata) def synchronize_resource( - self, - resource: Resource, - response: Union[Exception, Dict], - action_name: str, - succeeded: bool, - synchronized: bool, + self, + resource: Resource, + response: Union[Exception, Dict], + action_name: str, + succeeded: bool, + synchronized: bool, ) -> None: if succeeded: action = Action(action_name, succeeded, None) @@ -505,25 +468,27 @@ def synchronize_resource( def default_callback(self, fun_name: str) -> Callable: def callback(task: Task): result = task.result() - if isinstance(result.response, Exception): - self.synchronize_resource( - result.resource, result.response, fun_name, False, False - ) - else: - self.synchronize_resource( - result.resource, result.response, fun_name, True, True - ) + + succeeded = not isinstance(result.response, Exception) + + self.synchronize_resource( + resource=result.resource, + response=result.response, + action_name=fun_name, + succeeded=succeeded, + synchronized=succeeded, + ) return callback def verify( - self, - resources: List[Resource], - function_name, - exception: Type[Exception], - id_required: bool, - required_synchronized: bool, - execute_actions: bool, + self, + resources: List[Resource], + function_name, + exception: Type[Exception], + id_required: bool, + required_synchronized: bool, + execute_actions: bool, ) -> List[Resource]: valid = [] for resource in resources: @@ -554,12 +519,15 @@ def verify( return valid def to_resource( - self, payload: Dict, sync_metadata: bool = True, **kwargs + self, payload: Dict, sync_metadata: bool = True, **kwargs ) -> Resource: # Use JSONLD context defined in Model if no context is retrieved from payload # Todo: BlueBrainNexus store is not indexing in ES the JSONLD context, user provided context can be changed to Model defined one data_context = deepcopy( - payload.get("@context", self.model_context.iri if self.model_context else None)) + payload.get( + "@context", self.model_context.iri if self.model_context else None + ) + ) if not isinstance(data_context, list): data_context = [data_context] if self.store_context in data_context: @@ -576,9 +544,9 @@ def to_resource( data[k] = v if ( - self.model_context - and data_context is not None - and data_context == self.model_context.iri + self.model_context + and data_context is not None + and data_context == self.model_context.iri ): resolved_ctx = self.model_context.document["@context"] elif data_context is not None: @@ -599,24 +567,277 @@ def to_resource( if len(metadata) > 0 and sync_metadata: metadata.update(kwargs) self.sync_metadata(resource, metadata) - if not hasattr(resource, "id") and kwargs and 'id' in kwargs.keys(): + if not hasattr(resource, "id") and kwargs and "id" in kwargs.keys(): resource.id = kwargs.get("id") return resource def _error_message(error: Union[HTTPError, Dict]) -> str: + def format_message(msg: str): + return "".join([msg[0].lower(), msg[1:-1], msg[-1] if msg[-1] != "." else ""]) + try: # Error from Nexus error_json = error.response.json() if isinstance(error, HTTPError) else error messages = [] reason = error_json.get("reason", None) details = error_json.get("details", None) - if reason: + + if reason and isinstance(reason, str): messages.append(format_message(reason)) - if details: + if details and isinstance(details, str): messages.append(format_message(details)) - messages = messages if reason or details else [str(error)] + + messages = messages if len(messages) > 0 else [str(error)] return ". ".join(messages) except Exception: - # Return general HTTPError - return error_message(error) + pass + + try: + error_text = ( + error.response.text() if isinstance(error, HTTPError) else str(error) + ) + return format_message(error_text) + except Exception: + return format_message(str(error)) + + +class BatchRequestHandler: + + @staticmethod + def prepare_batch_create( + service: Service, + resource: Resource, + semaphore: asyncio.Semaphore, + session: ClientSession, + loop, + params: Dict, + error: RunException, + **kwargs, + ) -> Task: + + schema_id = kwargs.get("schema_id") + url = Service.add_schema_and_id_to_endpoint( + service.url_resources, schema_id=schema_id, resource_id=None + ) + + context = service.model_context or service.context + payload = as_jsonld( + resource, + "compacted", + False, + model_context=context, + metadata_context=None, + context_resolver=service.resolve_context, + ) + + return loop.create_task( + BatchRequestHandler.queue( + hdrs.METH_POST, + semaphore, + session, + url, + resource, + error, + headers=service.headers, + payload=payload, + params=params, + ) + ) + + @staticmethod + def prepare_batch_update( + service: Service, + resource: Resource, + semaphore: asyncio.Semaphore, + session: ClientSession, + loop, + params: Dict, + error: RunException, + **kwargs, + ): + + url, params_from_resource = service._prepare_uri( + resource, schema_uri=kwargs.get("schema_id"), use_unconstrained_id=True + ) + + params.update(params_from_resource) + + payload = as_jsonld( + resource, + "compacted", + False, + model_context=service.model_context, + metadata_context=None, + context_resolver=service.resolve_context, + ) + return loop.create_task( + BatchRequestHandler.queue( + hdrs.METH_PUT, + semaphore, + session, + url, + resource, + error, + headers=service.headers, + payload=payload, + params=params, + ) + ) + + @staticmethod + def prepare_batch_tag( + service: Service, + resource: Resource, + semaphore: asyncio.Semaphore, + session: ClientSession, + loop, + params: Dict, + error: RunException, + **kwargs, + ): + url, payload, rev_param = service._prepare_tag(resource, kwargs.get("tag")) + params.update(rev_param) + + return loop.create_task( + BatchRequestHandler.queue( + hdrs.METH_POST, + semaphore, + session, + url, + resource, + error, + headers=service.headers, + payload=payload, + params=params, + ) + ) + + @staticmethod + def prepare_batch_deprecate( + service: Service, + resource: Resource, + semaphore: asyncio.Semaphore, + session: ClientSession, + loop, + params: Dict, + error: RunException, + **kwargs, + ): + url, rev_param = service._prepare_uri(resource) + params.update(rev_param) + + return loop.create_task( + BatchRequestHandler.queue( + hdrs.METH_DELETE, + semaphore, + session, + url, + resource, + error, + headers=service.headers, + params=params, + ) + ) + + @staticmethod + def prepare_batch_fetch( + service: Service, + resource: Resource, + semaphore: asyncio.Semaphore, + session: ClientSession, + loop, + params: Dict, + error: RunException, + **kwargs, + ): + resource_org, resource_prj = resource._project.split("/")[-2:] + endpoint = Service.make_endpoint( + service.endpoint, "resources", resource_org, resource_prj + ) + url = Service.add_schema_and_id_to_endpoint( + endpoint=endpoint, schema_id=None, resource_id=resource.id + ) + + if hasattr(resource, "_rev"): + params["rev"] = resource._rev + + retrieve_source = params.pop("retrieve_source", False) + + if retrieve_source: + url = "/".join((url, "source")) + + return loop.create_task( + BatchRequestHandler.queue( + hdrs.METH_GET, + semaphore, + session, + url, + resource, + error, + headers=service.headers, + params=params, + ) + ) + + @staticmethod + def prepare_batch_update_schema( + service: Service, + resource: Resource, + semaphore: asyncio.Semaphore, + session: ClientSession, + loop, + params: Dict, + error: RunException, + **kwargs, + ): + + schema_id = kwargs.get("schema_id") + url = Service.add_schema_and_id_to_endpoint( + endpoint=service.url_resources, schema_id=schema_id, resource_id=resource.id + ) + + return loop.create_task( + BatchRequestHandler.queue( + hdrs.METH_PUT, + semaphore, + session, + url=f"{url}/update-schema", + resource=resource, + exception=error, + headers=service.headers, + payload=None, + params=None, + ) + ) + + @staticmethod + async def queue( + method, + semaphore, + session, + url, + resource, + exception, + headers, + payload=None, + params=None, + ): + async with semaphore: + return await BatchRequestHandler.request( + method, session, url, resource, payload, params, exception, headers + ) + + @staticmethod + async def request( + method, session, url, resource, payload, params, exception, headers + ): + async with session.request( + method, url, headers=headers, data=json.dumps(payload), params=params + ) as response: + content = await response.json() + if response.status < 400: + return BatchResult(resource, content) + + error = exception(_error_message(content)) + return BatchResult(resource, error) diff --git a/tests/specializations/stores/test_bluebrain_nexus.py b/tests/specializations/stores/test_bluebrain_nexus.py index 46e868bcf..fe7be8a2e 100644 --- a/tests/specializations/stores/test_bluebrain_nexus.py +++ b/tests/specializations/stores/test_bluebrain_nexus.py @@ -616,7 +616,7 @@ def test_dict_to_filters(self, filters, expected): ) def test_make_search_endpoint(nexus_store, view, endpoint_type, expected_endpoint, exception): with exception: - endpoint = nexus_store.service.make_endpoint(view, endpoint_type=endpoint_type) + endpoint = nexus_store.service.make_query_endpoint_self(view, endpoint_type=endpoint_type) assert endpoint == expected_endpoint From 76e2f7ef7235871df92a82e40e1863f1026f846f Mon Sep 17 00:00:00 2001 From: Sarah Date: Mon, 12 Feb 2024 19:03:16 +0100 Subject: [PATCH 15/49] Rm metadata fetch when forge.retrieve (#376) * change signatures to allow for boolean change_schema on update * change_schema implemented for single resource update * refactor batch actions * lint * began batch update schema * change schema many * progress * rm / join * rm useless change * fix * change schema to update schema * update instead of change * example notebook for schema method, todo update * notebook example with update * lint * improve notebook * fix one test * keep unconstrained schema only for update endpoint else _ * same url building in one and many * add timeout * schema id optional in update * rename local parse * rm second request for metadata * add query param annotate only if retrieve source is true * retrieval error if issue creating resource from response * rm cross bucket check with source * add todo * separate metadata call if cross bucket and source * refac * fixes and notebook update * check deployment endpoint self, may need to be checking multiple values * revert to self.endpoint * updated notebook to show retrieval * fix response name * add query param annotate only if retrieve source is true * separate metadata call if cross bucket and source * rename keep_unconstrained to use_unconstrained_id * rm extra docstring * better comments * clarify comment * comment fix * improve markdown --- .../use-cases/BBP KG Forge retrieval.ipynb | 197 ++++++++++++++++++ .../specializations/stores/bluebrain_nexus.py | 171 +++++++++------ 2 files changed, 299 insertions(+), 69 deletions(-) create mode 100644 examples/notebooks/use-cases/BBP KG Forge retrieval.ipynb diff --git a/examples/notebooks/use-cases/BBP KG Forge retrieval.ipynb b/examples/notebooks/use-cases/BBP KG Forge retrieval.ipynb new file mode 100644 index 000000000..142920e78 --- /dev/null +++ b/examples/notebooks/use-cases/BBP KG Forge retrieval.ipynb @@ -0,0 +1,197 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "2c4aec45-da10-4b11-8469-b0e62f8a0c31", + "metadata": {}, + "outputs": [], + "source": [ + "from kgforge.core import KnowledgeGraphForge" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "0ac8879d-b05b-482c-94b6-e46437291854", + "metadata": {}, + "outputs": [ + { + "name": "stdin", + "output_type": "stream", + "text": [ + " ········\n" + ] + } + ], + "source": [ + "import getpass\n", + "TOKEN = getpass.getpass()" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "eb70f64b-7ca2-4c71-a725-87cfd7ce2e1d", + "metadata": {}, + "outputs": [], + "source": [ + "BUCKET = \"dke/kgforge\"\n", + "\n", + "forge = KnowledgeGraphForge(\n", + " \"../use-cases/prod-forge-nexus.yml\",\n", + " bucket=BUCKET,\n", + " token=TOKEN\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "c0ea94f6-b66d-4761-909e-a508f61b72ee", + "metadata": {}, + "source": [ + "Show-cases options for retrieval.\n", + "- The identifiers used are\n", + " - An `id` from the bucket of the configured forge instance\n", + " - A `_self` from the bucket of the configured forge instance\n", + " - An id from a bucket other than the one of the configured forge instance\n", + " - A `_self` from a bucket other than the one of the configured forge instance\n", + "- For either `retrieve_source = True` or `retrieve_source = False`\n", + "- For `cross_bucket = True` or `cross_bucket = False`\n", + "\n", + "We expect that the following calls with fail:\n", + "- An `id` from a bucket other than the one of the configured forge instance, with `cross_bucket = False`, with `retrieve_source = True` or `retrieve_source = False`\n", + "- An `_self` from a bucket other than the one of the configured forge instance, with `cross_bucket = False`, with `retrieve_source = True` or `retrieve_source = False`\n", + "\n", + "In the case of the usage of `_self`, it is more clear that user input is the issue because the `_self` holds the bucket where the resource that is attempted to be retrieved is located.\n", + "In the case of the usage of `id`, it is not possible to provide a meaningful error as to why the `id` could not be found in the forge instance's configured bucket. " + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "826d1183-6898-4977-b7ee-9518e4095fef", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Execution 0 using: id inside: same bucket - Cross bucket: True - Retrieve source: True\n", + "rev 3\n", + "______________________\n", + "Execution 1 using: self inside: same bucket - Cross bucket: True - Retrieve source: True\n", + "rev 3\n", + "______________________\n", + "Execution 2 using: id inside: other bucket - Cross bucket: True - Retrieve source: True\n", + "rev 3\n", + "______________________\n", + "Execution 3 using: self inside: other bucket - Cross bucket: True - Retrieve source: True\n", + "rev 3\n", + "______________________\n", + "Execution 4 using: id inside: same bucket - Cross bucket: False - Retrieve source: True\n", + "rev 3\n", + "______________________\n", + "Execution 5 using: self inside: same bucket - Cross bucket: False - Retrieve source: True\n", + "rev 3\n", + "______________________\n", + "Execution 6 using: id inside: other bucket - Cross bucket: False - Retrieve source: True\n", + " catch_http_error\n", + " RetrievalError: resource 'http://purl.obolibrary.org/obo/GO_0038048' not found in project 'dke/kgforge'\n", + "\n", + "Not found\n", + "______________________\n", + "Execution 7 using: self inside: other bucket - Cross bucket: False - Retrieve source: True\n", + " retrieve\n", + " RetrievalError: Provided resource identifier https://bbp.epfl.ch/nexus/v1/resources/neurosciencegraph/datamodels/_/http:%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048 is not inside the current bucket, use cross_bucket=True to be able to retrieve it\n", + "\n", + "Not found\n", + "______________________\n", + "Execution 8 using: id inside: same bucket - Cross bucket: True - Retrieve source: False\n", + "rev 3\n", + "______________________\n", + "Execution 9 using: self inside: same bucket - Cross bucket: True - Retrieve source: False\n", + "rev 3\n", + "______________________\n", + "Execution 10 using: id inside: other bucket - Cross bucket: True - Retrieve source: False\n", + "rev 3\n", + "______________________\n", + "Execution 11 using: self inside: other bucket - Cross bucket: True - Retrieve source: False\n", + "rev 3\n", + "______________________\n", + "Execution 12 using: id inside: same bucket - Cross bucket: False - Retrieve source: False\n", + "rev 3\n", + "______________________\n", + "Execution 13 using: self inside: same bucket - Cross bucket: False - Retrieve source: False\n", + "rev 3\n", + "______________________\n", + "Execution 14 using: id inside: other bucket - Cross bucket: False - Retrieve source: False\n", + " catch_http_error\n", + " RetrievalError: 404 Client Error: Not Found for url: https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048\n", + "\n", + "Not found\n", + "______________________\n", + "Execution 15 using: self inside: other bucket - Cross bucket: False - Retrieve source: False\n", + " retrieve\n", + " RetrievalError: Provided resource identifier https://bbp.epfl.ch/nexus/v1/resources/neurosciencegraph/datamodels/_/http:%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048 is not inside the current bucket, use cross_bucket=True to be able to retrieve it\n", + "\n", + "Not found\n", + "______________________\n" + ] + } + ], + "source": [ + "id_ = \"https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\"\n", + "self_ = \"https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/https:%2F%2Fbbp.epfl.ch%2Fnexus%2Fv1%2Fresources%2Fdke%2Fkgforge%2F_%2F20fbc97a-fb26-43ff-8093-9136aab25dff\"\n", + "\n", + "id_other_bucket = \"http://purl.obolibrary.org/obo/GO_0038048\"\n", + "self_other_bucket = \"https://bbp.epfl.ch/nexus/v1/resources/neurosciencegraph/datamodels/_/http:%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048\"\n", + "\n", + "all_ret = [\n", + " (id_, \"id\", \"same bucket\"), \n", + " (self_, \"self\", \"same bucket\"), \n", + " (id_other_bucket, \"id\", \"other bucket\"),\n", + " (self_other_bucket, \"self\", \"other bucket\"),\n", + "]\n", + "\n", + "i = 0\n", + "\n", + "for rs in [True, False]:\n", + " for cb in [True, False]:\n", + " for (el, type_, loc) in all_ret:\n", + "\n", + " print(f\"Execution {i}\", \" using: \", type_, \"inside: \", loc, \" - Cross bucket:\", cb, \" - Retrieve source:\", rs)\n", + "\n", + " e = forge.retrieve(el, cross_bucket=cb, retrieve_source=rs)\n", + "\n", + " if not e:\n", + " print(\"Not found\")\n", + " else:\n", + " print(\"rev\", e._store_metadata._rev)\n", + " print(\"______________________\")\n", + " i += 1\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "forge_venv2", + "language": "python", + "name": "venv" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.17" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index 5d330b235..9f387f29f 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -254,10 +254,11 @@ def _upload_one(self, path: Path, content_type: str) -> Dict: # C[R]UD. @staticmethod - def _local_url_parse(id_value, version_params): + def _local_url_parse(id_value, version_params) -> Tuple[str, Dict]: parsed_id = urlparse(id_value) fragment = None - query_params = None + query_params = {} + # urlparse is not separating fragment and query params when the latter are put after a fragment if parsed_id.fragment is not None and "?" in str(parsed_id.fragment): fragment_parts = urlparse(parsed_id.fragment) @@ -269,14 +270,94 @@ def _local_url_parse(id_value, version_params): query_params = parse_qs(parsed_id.query) if version_params is not None: - if not isinstance(query_params, dict): - query_params = {} query_params.update(version_params) - id_without_query = f"{parsed_id.scheme}://{parsed_id.netloc}{parsed_id.path}{'#' + fragment if fragment is not None else ''}" + formatted_fragment = '#' + fragment if fragment is not None else '' + id_without_query = f"{parsed_id.scheme}://{parsed_id.netloc}{parsed_id.path}{formatted_fragment}" return id_without_query, query_params + def _retrieve_id( + self, id_, retrieve_source: bool, cross_bucket: bool, query_params: Dict + ): + """ + Retrieves assuming the provided identifier really is the id + """ + url_base = self.service.url_resolver if cross_bucket else self.service.url_resources + + url_resource = Service.add_schema_and_id_to_endpoint( + url_base, schema_id=None, resource_id=id_ + ) + # 4 cases depending on the value of retrieve_source and cross_bucket: + # retrieve_source = False and cross_bucket = True: metadata in payload + # retrieve_source = False and cross_bucket = False: metadata in payload + # retrieve_source = True and cross_bucket = False: metadata in payload with annotate = True + # retrieve_source = True and cross_bucket = True: + # Uses the resolvers endpoint. No metadata if retrieving_source. + # https://github.com/BlueBrain/nexus/issues/4717 To fetch separately. + # Solution: first API call used to retrieve metadata + # afterwards, second API call to retrieve data + + url = f"{url_resource}/source" if retrieve_source else url_resource + + # if cross_bucket, no support for /source and metadata. + # So this will fetch the right metadata. The source data will be fetched later + if cross_bucket: + url = url_resource + + response = requests.get( + url, params=query_params, headers=self.service.headers, timeout=REQUEST_TIMEOUT + ) + catch_http_error_nexus(response, RetrievalError) + + try: + data = response.json() + resource = self.service.to_resource(data) + except Exception as e: + raise RetrievalError(e) from e + + if not (retrieve_source and cross_bucket): + return resource + + # specific case that requires additional fetching of data without source + _self = data.get("_self", None) + + # Retrieves the appropriate data if retrieve_source = True and cross_bucket = True + if _self: + response_source = requests.get( + url=f"{_self}/source", + params=query_params, headers=self.service.headers, timeout=REQUEST_TIMEOUT + ) + catch_http_error_nexus(response_source, RetrievalError) + # turns the retrieved data into a resource + resource = self.service.to_resource(response_source.json()) + # uses the metadata of the first call + self.service.synchronize_resource( + resource, data, self.retrieve.__name__, True, True + ) + return resource + + raise RetrievalError("Cannot find metadata in payload") + + def _retrieve_self( + self, self_, retrieve_source: bool, query_params: Dict + ) -> Resource: + """ + Retrieves assuming the provided identifier is actually the resource's _self field + """ + url = f"{self_}/source" if retrieve_source else self_ + + response = requests.get( + url, params=query_params, headers=self.service.headers, timeout=REQUEST_TIMEOUT + ) + catch_http_error_nexus(response, RetrievalError) + + try: + data = response.json() + return self.service.to_resource(data) + except Exception as e: + raise RetrievalError(e) from e + def retrieve( self, id_: str, version: Optional[Union[int, str]], cross_bucket: bool = False, **params ) -> Optional[Resource]: @@ -306,83 +387,35 @@ def retrieve( id_value=id_, version_params=version_params ) - url_base = self.service.url_resolver if cross_bucket else self.service.url_resources - retrieve_source = params.get('retrieve_source', True) - url_resource = Service.add_schema_and_id_to_endpoint( - url_base, schema_id=None, resource_id=id_without_query - ) - - url = f"{url_resource}/source" if retrieve_source and not cross_bucket else url_resource + if retrieve_source: + query_params.update({"annotate": True}) try: - response = requests.get( - url, params=query_params, headers=self.service.headers, - timeout=REQUEST_TIMEOUT + return self._retrieve_id( + id_=id_without_query, retrieve_source=retrieve_source, + cross_bucket=cross_bucket, query_params=query_params ) - catch_http_error_nexus(response, RetrievalError) except RetrievalError as er: # without org and proj, vs with - nexus_path = f"{self.service.endpoint}/resources/" if cross_bucket else self.service.url_resources + nexus_path_no_bucket = f"{self.service.endpoint}/resources/" + nexus_path = nexus_path_no_bucket if cross_bucket else self.service.url_resources - # Try to use the id as it was given - if not id_.startswith(nexus_path): + if not id_without_query.startswith(nexus_path_no_bucket): raise er - url_resource = id_without_query - - url = f"{id_without_query}/source" if retrieve_source and not cross_bucket \ - else id_without_query - - response = requests.get( - url, params=query_params, headers=self.service.headers, timeout=REQUEST_TIMEOUT - ) - catch_http_error_nexus(response, RetrievalError) - - if not retrieve_source: - response_metadata = True # when retrieve_source is False - else: - if not cross_bucket: - u = url_resource - else: - if response and ('_self' in response.json()): - res_self = response.json()["_self"] - u = f"{res_self}/source" - else: - print("TODO uncovered case") - - response_metadata = requests.get( - u, params=query_params, headers=self.service.headers, timeout=REQUEST_TIMEOUT - ) - catch_http_error_nexus(response, RetrievalError) - - if response and response_metadata: - try: - data = response.json() - resource = self.service.to_resource(data) - except Exception as e: - raise ValueError(e) from e - - try: - if retrieve_source and not cross_bucket: - data = response_metadata.json() - if retrieve_source and cross_bucket: - resource = self.service.to_resource(response_metadata.json()) - except Exception as e: - self.service.synchronize_resource( - resource, data, self.retrieve.__name__, False, False + if not id_without_query.startswith(nexus_path): + raise RetrievalError( + f"Provided resource identifier {id_} is not inside the current bucket, " + "use cross_bucket=True to be able to retrieve it" ) - raise ValueError(e) from e - finally: - self.service.synchronize_resource( - resource, data, self.retrieve.__name__, True, True - ) - return resource - - return None + # Try to use the id as it was given + return self._retrieve_self( + self_=id_without_query, retrieve_source=retrieve_source, query_params=query_params + ) def _retrieve_filename(self, id_: str) -> Tuple[str, str]: response = requests.get(id_, headers=self.service.headers, timeout=REQUEST_TIMEOUT) From 41503dcf203630a3cdf216376ae1337842eb8cd5 Mon Sep 17 00:00:00 2001 From: Sarah Date: Tue, 13 Feb 2024 17:43:57 +0100 Subject: [PATCH 16/49] re-do metadata fetch until endpoint is fixed (#381) * re-do metadata fetch until endpoint is fixed * better notebook * rename variables * code style * fix replace in comments * update comments --- .../use-cases/BBP KG Forge retrieval.ipynb | 28 +++--- .../specializations/stores/bluebrain_nexus.py | 86 +++++++++++-------- 2 files changed, 66 insertions(+), 48 deletions(-) diff --git a/examples/notebooks/use-cases/BBP KG Forge retrieval.ipynb b/examples/notebooks/use-cases/BBP KG Forge retrieval.ipynb index 142920e78..e7018bea5 100644 --- a/examples/notebooks/use-cases/BBP KG Forge retrieval.ipynb +++ b/examples/notebooks/use-cases/BBP KG Forge retrieval.ipynb @@ -78,26 +78,26 @@ "output_type": "stream", "text": [ "Execution 0 using: id inside: same bucket - Cross bucket: True - Retrieve source: True\n", - "rev 3\n", + "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 1 using: self inside: same bucket - Cross bucket: True - Retrieve source: True\n", - "rev 3\n", + "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 2 using: id inside: other bucket - Cross bucket: True - Retrieve source: True\n", - "rev 3\n", + "rev 3 https://bbp.neuroshapes.org http://purl.obolibrary.org/obo/GO_0038048\n", "______________________\n", "Execution 3 using: self inside: other bucket - Cross bucket: True - Retrieve source: True\n", - "rev 3\n", + "rev 3 https://bbp.neuroshapes.org http://purl.obolibrary.org/obo/GO_0038048\n", "______________________\n", "Execution 4 using: id inside: same bucket - Cross bucket: False - Retrieve source: True\n", - "rev 3\n", + "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 5 using: self inside: same bucket - Cross bucket: False - Retrieve source: True\n", - "rev 3\n", + "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 6 using: id inside: other bucket - Cross bucket: False - Retrieve source: True\n", " catch_http_error\n", - " RetrievalError: resource 'http://purl.obolibrary.org/obo/GO_0038048' not found in project 'dke/kgforge'\n", + " RetrievalError: 404 Client Error: Not Found for url: https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048\n", "\n", "Not found\n", "______________________\n", @@ -108,22 +108,22 @@ "Not found\n", "______________________\n", "Execution 8 using: id inside: same bucket - Cross bucket: True - Retrieve source: False\n", - "rev 3\n", + "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 9 using: self inside: same bucket - Cross bucket: True - Retrieve source: False\n", - "rev 3\n", + "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 10 using: id inside: other bucket - Cross bucket: True - Retrieve source: False\n", - "rev 3\n", + "rev 3 https://bbp.neuroshapes.org GO:0038048\n", "______________________\n", "Execution 11 using: self inside: other bucket - Cross bucket: True - Retrieve source: False\n", - "rev 3\n", + "rev 3 https://bbp.neuroshapes.org GO:0038048\n", "______________________\n", "Execution 12 using: id inside: same bucket - Cross bucket: False - Retrieve source: False\n", - "rev 3\n", + "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 13 using: self inside: same bucket - Cross bucket: False - Retrieve source: False\n", - "rev 3\n", + "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 14 using: id inside: other bucket - Cross bucket: False - Retrieve source: False\n", " catch_http_error\n", @@ -167,7 +167,7 @@ " if not e:\n", " print(\"Not found\")\n", " else:\n", - " print(\"rev\", e._store_metadata._rev)\n", + " print(\"rev\", e._store_metadata._rev, e.context, e.id)\n", " print(\"______________________\")\n", " i += 1\n" ] diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index 9f387f29f..c42228d28 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -298,66 +298,84 @@ def _retrieve_id( # Solution: first API call used to retrieve metadata # afterwards, second API call to retrieve data - url = f"{url_resource}/source" if retrieve_source else url_resource + # TODO temporary + # url = f"{url_resource}/source" if retrieve_source else url_resource + # + # # if cross_bucket, no support for /source and metadata. + # # So this will fetch the right metadata. The source data will be fetched later + # if cross_bucket: + # url = url_resource - # if cross_bucket, no support for /source and metadata. - # So this will fetch the right metadata. The source data will be fetched later - if cross_bucket: - url = url_resource + url = url_resource - response = requests.get( + response_not_source_with_metadata = requests.get( url, params=query_params, headers=self.service.headers, timeout=REQUEST_TIMEOUT ) - catch_http_error_nexus(response, RetrievalError) + catch_http_error_nexus(response_not_source_with_metadata, RetrievalError) try: - data = response.json() - resource = self.service.to_resource(data) + not_source_with_metadata = response_not_source_with_metadata.json() + + # TODO temporary + # if not (retrieve_source and cross_bucket): + # return self.service.to_resource(not_source_with_metadata) + + if not retrieve_source: + return self.service.to_resource(not_source_with_metadata) + except Exception as e: raise RetrievalError(e) from e - if not (retrieve_source and cross_bucket): - return resource - - # specific case that requires additional fetching of data without source - _self = data.get("_self", None) + # specific case that requires additional fetching of data with source + _self = not_source_with_metadata.get("_self", None) - # Retrieves the appropriate data if retrieve_source = True and cross_bucket = True + # Retrieves the appropriate data if retrieve_source = True if _self: - response_source = requests.get( - url=f"{_self}/source", - params=query_params, headers=self.service.headers, timeout=REQUEST_TIMEOUT - ) - catch_http_error_nexus(response_source, RetrievalError) - # turns the retrieved data into a resource - resource = self.service.to_resource(response_source.json()) - # uses the metadata of the first call - self.service.synchronize_resource( - resource, data, self.retrieve.__name__, True, True - ) - return resource + return self._merge_metadata_with_source_data(_self, not_source_with_metadata, query_params) raise RetrievalError("Cannot find metadata in payload") + def _merge_metadata_with_source_data(self, _self, data_not_source_with_metadata, query_params): + response_source = requests.get( + url=f"{_self}/source", + params=query_params, headers=self.service.headers, + timeout=REQUEST_TIMEOUT + ) + catch_http_error_nexus(response_source, RetrievalError) + # turns the retrieved data into a resource + data_source = response_source.json() + resource = self.service.to_resource(data_source) + # uses the metadata of the first call + self.service.synchronize_resource( + resource, data_not_source_with_metadata, self.retrieve.__name__, True, True + ) + return resource + def _retrieve_self( self, self_, retrieve_source: bool, query_params: Dict ) -> Resource: """ Retrieves assuming the provided identifier is actually the resource's _self field """ - url = f"{self_}/source" if retrieve_source else self_ + # TODO temporary + # url = f"{self_}/source" if retrieve_source else self_ + url = self_ - response = requests.get( + response_not_source_with_metadata = requests.get( url, params=query_params, headers=self.service.headers, timeout=REQUEST_TIMEOUT ) - catch_http_error_nexus(response, RetrievalError) + catch_http_error_nexus(response_not_source_with_metadata, RetrievalError) try: - data = response.json() - return self.service.to_resource(data) + not_source_with_metadata = response_not_source_with_metadata.json() + if not retrieve_source: + return self.service.to_resource(not_source_with_metadata) + except Exception as e: raise RetrievalError(e) from e + return self._merge_metadata_with_source_data(self_, not_source_with_metadata, query_params) + def retrieve( self, id_: str, version: Optional[Union[int, str]], cross_bucket: bool = False, **params ) -> Optional[Resource]: @@ -389,8 +407,8 @@ def retrieve( retrieve_source = params.get('retrieve_source', True) - if retrieve_source: - query_params.update({"annotate": True}) + # if retrieve_source: + # query_params.update({"annotate": True}) try: return self._retrieve_id( From 647912a1a2b688352ee4934d1a089f77bec574bd Mon Sep 17 00:00:00 2001 From: Sarah Date: Mon, 19 Feb 2024 14:19:28 +0100 Subject: [PATCH 17/49] return resources as dictionaries when forge.elastic if as_resource = False (#382) * return resource as_json optionally when forge.elastic * as_resource instead of as_json, default True * skeleton to enable building resources from different values in the es response payload * example of forge.elastic as_resource = False in getting started Querying notebook --- .../getting-started/04 - Querying.ipynb | 1074 ++++++++++------- kgforge/core/archetypes/read_only_store.py | 5 +- kgforge/core/archetypes/store.py | 13 +- .../specializations/stores/bluebrain_nexus.py | 26 +- kgforge/specializations/stores/demo_store.py | 6 +- 5 files changed, 685 insertions(+), 439 deletions(-) diff --git a/examples/notebooks/getting-started/04 - Querying.ipynb b/examples/notebooks/getting-started/04 - Querying.ipynb index 9c26a3ed4..2f2ed58db 100644 --- a/examples/notebooks/getting-started/04 - Querying.ipynb +++ b/examples/notebooks/getting-started/04 - Querying.ipynb @@ -17,7 +17,7 @@ }, { "cell_type": "code", - "execution_count": 141, + "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:20.068658Z", @@ -39,7 +39,7 @@ }, { "cell_type": "code", - "execution_count": 142, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ @@ -56,7 +56,7 @@ }, { "cell_type": "code", - "execution_count": 143, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ @@ -83,7 +83,7 @@ }, { "cell_type": "code", - "execution_count": 144, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ @@ -92,7 +92,7 @@ }, { "cell_type": "code", - "execution_count": 145, + "execution_count": 5, "metadata": {}, "outputs": [ { @@ -110,7 +110,7 @@ }, { "cell_type": "code", - "execution_count": 146, + "execution_count": 6, "metadata": {}, "outputs": [], "source": [ @@ -119,7 +119,7 @@ }, { "cell_type": "code", - "execution_count": 147, + "execution_count": 7, "metadata": {}, "outputs": [ { @@ -128,7 +128,7 @@ "True" ] }, - "execution_count": 147, + "execution_count": 7, "metadata": {}, "output_type": "execute_result" } @@ -147,7 +147,7 @@ }, { "cell_type": "code", - "execution_count": 148, + "execution_count": 8, "metadata": {}, "outputs": [], "source": [ @@ -156,7 +156,7 @@ }, { "cell_type": "code", - "execution_count": 149, + "execution_count": 9, "metadata": {}, "outputs": [ { @@ -174,7 +174,7 @@ }, { "cell_type": "code", - "execution_count": 150, + "execution_count": 10, "metadata": {}, "outputs": [ { @@ -192,7 +192,7 @@ }, { "cell_type": "code", - "execution_count": 151, + "execution_count": 11, "metadata": {}, "outputs": [], "source": [ @@ -201,7 +201,7 @@ }, { "cell_type": "code", - "execution_count": 152, + "execution_count": 12, "metadata": {}, "outputs": [ { @@ -219,7 +219,7 @@ }, { "cell_type": "code", - "execution_count": 153, + "execution_count": 13, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.317601Z", @@ -246,7 +246,7 @@ }, { "cell_type": "code", - "execution_count": 154, + "execution_count": 14, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.332678Z", @@ -260,7 +260,7 @@ }, { "cell_type": "code", - "execution_count": 155, + "execution_count": 15, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.370051Z", @@ -274,7 +274,7 @@ }, { "cell_type": "code", - "execution_count": 156, + "execution_count": 16, "metadata": {}, "outputs": [], "source": [ @@ -283,7 +283,7 @@ }, { "cell_type": "code", - "execution_count": 157, + "execution_count": 17, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.379911Z", @@ -297,7 +297,7 @@ "True" ] }, - "execution_count": 157, + "execution_count": 17, "metadata": {}, "output_type": "execute_result" } @@ -308,7 +308,7 @@ }, { "cell_type": "code", - "execution_count": 158, + "execution_count": 18, "metadata": {}, "outputs": [ { @@ -317,7 +317,7 @@ "True" ] }, - "execution_count": 158, + "execution_count": 18, "metadata": {}, "output_type": "execute_result" } @@ -328,7 +328,7 @@ }, { "cell_type": "code", - "execution_count": 159, + "execution_count": 19, "metadata": {}, "outputs": [ { @@ -337,7 +337,7 @@ "True" ] }, - "execution_count": 159, + "execution_count": 19, "metadata": {}, "output_type": "execute_result" } @@ -348,7 +348,7 @@ }, { "cell_type": "code", - "execution_count": 160, + "execution_count": 20, "metadata": {}, "outputs": [ { @@ -379,7 +379,7 @@ }, { "cell_type": "code", - "execution_count": 161, + "execution_count": 21, "metadata": {}, "outputs": [], "source": [ @@ -388,28 +388,28 @@ }, { "cell_type": "code", - "execution_count": 162, + "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/b6a3d43a-bf8f-4e4a-bdd5-49a67fb34456',\n", + "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/91246fb9-3193-4c56-b9b4-8e88d828273c',\n", " '_constrainedBy': 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", - " '_createdAt': '2024-02-02T09:59:27.956Z',\n", + " '_createdAt': '2024-02-15T13:28:29.759Z',\n", " '_createdBy': 'https://sandbox.bluebrainnexus.io/v1/realms/github/users/ssssarah',\n", " '_deprecated': False,\n", - " '_incoming': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2Fb6a3d43a-bf8f-4e4a-bdd5-49a67fb34456/incoming',\n", - " '_outgoing': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2Fb6a3d43a-bf8f-4e4a-bdd5-49a67fb34456/outgoing',\n", + " '_incoming': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2F91246fb9-3193-4c56-b9b4-8e88d828273c/incoming',\n", + " '_outgoing': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2F91246fb9-3193-4c56-b9b4-8e88d828273c/outgoing',\n", " '_project': 'https://sandbox.bluebrainnexus.io/v1/projects/github-users/ssssarah',\n", " '_rev': 3,\n", " '_schemaProject': 'https://sandbox.bluebrainnexus.io/v1/projects/github-users/ssssarah',\n", - " '_self': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2Fb6a3d43a-bf8f-4e4a-bdd5-49a67fb34456',\n", - " '_updatedAt': '2024-02-02T09:59:28.486Z',\n", + " '_self': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2F91246fb9-3193-4c56-b9b4-8e88d828273c',\n", + " '_updatedAt': '2024-02-15T13:28:29.960Z',\n", " '_updatedBy': 'https://sandbox.bluebrainnexus.io/v1/realms/github/users/ssssarah'}" ] }, - "execution_count": 162, + "execution_count": 22, "metadata": {}, "output_type": "execute_result" } @@ -420,7 +420,7 @@ }, { "cell_type": "code", - "execution_count": 163, + "execution_count": 23, "metadata": {}, "outputs": [ { @@ -429,7 +429,7 @@ "Action(error=None, message=None, operation='retrieve', succeeded=True)" ] }, - "execution_count": 163, + "execution_count": 23, "metadata": {}, "output_type": "execute_result" } @@ -440,7 +440,7 @@ }, { "cell_type": "code", - "execution_count": 164, + "execution_count": 24, "metadata": {}, "outputs": [ { @@ -449,7 +449,7 @@ "True" ] }, - "execution_count": 164, + "execution_count": 24, "metadata": {}, "output_type": "execute_result" } @@ -469,7 +469,7 @@ }, { "cell_type": "code", - "execution_count": 165, + "execution_count": 25, "metadata": {}, "outputs": [], "source": [ @@ -480,7 +480,7 @@ }, { "cell_type": "code", - "execution_count": 166, + "execution_count": 26, "metadata": {}, "outputs": [], "source": [ @@ -489,7 +489,7 @@ }, { "cell_type": "code", - "execution_count": 167, + "execution_count": 27, "metadata": {}, "outputs": [], "source": [ @@ -498,7 +498,7 @@ }, { "cell_type": "code", - "execution_count": 168, + "execution_count": 28, "metadata": {}, "outputs": [ { @@ -516,7 +516,7 @@ }, { "cell_type": "code", - "execution_count": 169, + "execution_count": 29, "metadata": {}, "outputs": [], "source": [ @@ -525,7 +525,7 @@ }, { "cell_type": "code", - "execution_count": 170, + "execution_count": 30, "metadata": {}, "outputs": [], "source": [ @@ -543,7 +543,7 @@ }, { "cell_type": "code", - "execution_count": 171, + "execution_count": 31, "metadata": {}, "outputs": [ { @@ -552,7 +552,7 @@ "True" ] }, - "execution_count": 171, + "execution_count": 31, "metadata": {}, "output_type": "execute_result" } @@ -572,7 +572,7 @@ }, { "cell_type": "code", - "execution_count": 172, + "execution_count": 32, "metadata": {}, "outputs": [], "source": [ @@ -581,20 +581,20 @@ }, { "cell_type": "code", - "execution_count": 173, + "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/b6a3d43a-bf8f-4e4a-bdd5-49a67fb34456',\n", + "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/91246fb9-3193-4c56-b9b4-8e88d828273c',\n", " 'type': 'Person',\n", " 'award': 'Nobel',\n", " 'email': ['jane.doe@epfl.ch', 'jane.doe@example.org'],\n", " 'name': 'Jane Doe'}" ] }, - "execution_count": 173, + "execution_count": 33, "metadata": {}, "output_type": "execute_result" } @@ -605,28 +605,28 @@ }, { "cell_type": "code", - "execution_count": 174, + "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/b6a3d43a-bf8f-4e4a-bdd5-49a67fb34456',\n", + "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/91246fb9-3193-4c56-b9b4-8e88d828273c',\n", " '_constrainedBy': 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", - " '_createdAt': '2024-02-02T09:59:27.956Z',\n", + " '_createdAt': '2024-02-15T13:28:29.759Z',\n", " '_createdBy': 'https://sandbox.bluebrainnexus.io/v1/realms/github/users/ssssarah',\n", " '_deprecated': False,\n", - " '_incoming': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2Fb6a3d43a-bf8f-4e4a-bdd5-49a67fb34456/incoming',\n", - " '_outgoing': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2Fb6a3d43a-bf8f-4e4a-bdd5-49a67fb34456/outgoing',\n", + " '_incoming': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2F91246fb9-3193-4c56-b9b4-8e88d828273c/incoming',\n", + " '_outgoing': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2F91246fb9-3193-4c56-b9b4-8e88d828273c/outgoing',\n", " '_project': 'https://sandbox.bluebrainnexus.io/v1/projects/github-users/ssssarah',\n", " '_rev': 3,\n", " '_schemaProject': 'https://sandbox.bluebrainnexus.io/v1/projects/github-users/ssssarah',\n", - " '_self': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2Fb6a3d43a-bf8f-4e4a-bdd5-49a67fb34456',\n", - " '_updatedAt': '2024-02-02T09:59:28.486Z',\n", + " '_self': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2F91246fb9-3193-4c56-b9b4-8e88d828273c',\n", + " '_updatedAt': '2024-02-15T13:28:29.960Z',\n", " '_updatedBy': 'https://sandbox.bluebrainnexus.io/v1/realms/github/users/ssssarah'}" ] }, - "execution_count": 174, + "execution_count": 34, "metadata": {}, "output_type": "execute_result" } @@ -637,36 +637,25 @@ }, { "cell_type": "code", - "execution_count": 175, + "execution_count": 35, "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Action(error=None, message=None, operation='retrieve', succeeded=True)" - ] - }, - "execution_count": 175, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "resource._last_action" ] }, { "cell_type": "code", - "execution_count": 176, + "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "True" + "False" ] }, - "execution_count": 176, + "execution_count": 36, "metadata": {}, "output_type": "execute_result" } @@ -685,7 +674,7 @@ }, { "cell_type": "code", - "execution_count": 177, + "execution_count": 37, "metadata": {}, "outputs": [ { @@ -693,7 +682,7 @@ "output_type": "stream", "text": [ " catch_http_error\n", - " RetrievalError: 404 Client Error: Not Found for url: https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/%3A%2F%2F123/source\n", + " RetrievalError: 404 Client Error: Not Found for url: https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/%3A%2F%2F123\n", "\n" ] } @@ -704,7 +693,7 @@ }, { "cell_type": "code", - "execution_count": 178, + "execution_count": 38, "metadata": {}, "outputs": [ { @@ -713,7 +702,7 @@ "True" ] }, - "execution_count": 178, + "execution_count": 38, "metadata": {}, "output_type": "execute_result" } @@ -740,7 +729,7 @@ }, { "cell_type": "code", - "execution_count": 179, + "execution_count": 39, "metadata": {}, "outputs": [], "source": [ @@ -750,7 +739,7 @@ }, { "cell_type": "code", - "execution_count": 180, + "execution_count": 40, "metadata": {}, "outputs": [], "source": [ @@ -760,7 +749,7 @@ }, { "cell_type": "code", - "execution_count": 181, + "execution_count": 41, "metadata": {}, "outputs": [], "source": [ @@ -770,7 +759,7 @@ }, { "cell_type": "code", - "execution_count": 182, + "execution_count": 42, "metadata": {}, "outputs": [ { @@ -788,13 +777,13 @@ }, { "cell_type": "code", - "execution_count": 183, + "execution_count": 43, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/f0689ed3-29b4-4462-867c-73e53197ec37',\n", + "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/e593f0b8-09f4-4438-b7a0-4024e06b47b6',\n", " 'type': 'Dataset',\n", " 'contribution': [{'type': 'Contribution',\n", " 'agent': {'type': 'Person', 'name': 'Jane Doe'}},\n", @@ -805,14 +794,14 @@ " 'type': 'DiskStorage',\n", " '_rev': 1}},\n", " 'contentSize': {'unitCode': 'bytes', 'value': 477},\n", - " 'contentUrl': 'https://sandbox.bluebrainnexus.io/v1/files/github-users/ssssarah/https%3A%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2F69b4201d-bc75-4b8e-be85-0817214c2c39',\n", + " 'contentUrl': 'https://sandbox.bluebrainnexus.io/v1/files/github-users/ssssarah/https%3A%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fssssarah%2F_%2F9863c9c1-6005-4634-9989-199ab4ed8bf1',\n", " 'digest': {'algorithm': 'SHA-256',\n", " 'value': '789aa07948683fe036ac29811814a826b703b562f7d168eb70dee1fabde26859'},\n", " 'encodingFormat': 'text/tab-separated-values',\n", " 'name': 'associations.tsv'}}" ] }, - "execution_count": 183, + "execution_count": 43, "metadata": {}, "output_type": "execute_result" } @@ -841,7 +830,7 @@ }, { "cell_type": "code", - "execution_count": 184, + "execution_count": 44, "metadata": {}, "outputs": [], "source": [ @@ -874,7 +863,7 @@ }, { "cell_type": "code", - "execution_count": 185, + "execution_count": 45, "metadata": {}, "outputs": [], "source": [ @@ -883,7 +872,7 @@ }, { "cell_type": "code", - "execution_count": 186, + "execution_count": 46, "metadata": {}, "outputs": [ { @@ -892,7 +881,7 @@ "list" ] }, - "execution_count": 186, + "execution_count": 46, "metadata": {}, "output_type": "execute_result" } @@ -903,7 +892,7 @@ }, { "cell_type": "code", - "execution_count": 187, + "execution_count": 47, "metadata": {}, "outputs": [ { @@ -912,7 +901,7 @@ "3" ] }, - "execution_count": 187, + "execution_count": 47, "metadata": {}, "output_type": "execute_result" } @@ -923,7 +912,7 @@ }, { "cell_type": "code", - "execution_count": 188, + "execution_count": 48, "metadata": {}, "outputs": [ { @@ -949,9 +938,19 @@ " \n", " id\n", " type\n", - " award\n", " name\n", - " email\n", + " distribution.type\n", + " distribution.atLocation.type\n", + " distribution.atLocation.store.id\n", + " distribution.atLocation.store.type\n", + " distribution.atLocation.store._rev\n", + " distribution.contentSize.unitCode\n", + " distribution.contentSize.value\n", + " distribution.contentUrl\n", + " distribution.digest.algorithm\n", + " distribution.digest.value\n", + " distribution.encodingFormat\n", + " distribution.name\n", " \n", " \n", " \n", @@ -959,43 +958,108 @@ " 0\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " Person\n", - " [Nobel]\n", - " Jane Doe\n", + " John Smith\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", " NaN\n", " \n", " \n", " 1\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " Person\n", - " [Nobel]\n", " Jane Doe\n", - " [jane.doe@epfl.ch, jane.doe@example.org]\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", " \n", " \n", " 2\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " Person\n", - " [Nobel]\n", " Jane Doe\n", - " NaN\n", + " DataDownload\n", + " Location\n", + " https://bluebrain.github.io/nexus/vocabulary/d...\n", + " DiskStorage\n", + " 1.0\n", + " bytes\n", + " 52.0\n", + " https://sandbox.bluebrainnexus.io/v1/files/git...\n", + " SHA-256\n", + " 1dacd765946963fda4949753659089c5f532714b418d30...\n", + " text/csv\n", + " persons.csv\n", " \n", " \n", "\n", "" ], "text/plain": [ - " id type award \\\n", - "0 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", - "1 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", - "2 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", + " id type name \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... Person John Smith \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... Person Jane Doe \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... Person Jane Doe \n", + "\n", + " distribution.type distribution.atLocation.type \\\n", + "0 NaN NaN \n", + "1 NaN NaN \n", + "2 DataDownload Location \n", + "\n", + " distribution.atLocation.store.id \\\n", + "0 NaN \n", + "1 NaN \n", + "2 https://bluebrain.github.io/nexus/vocabulary/d... \n", + "\n", + " distribution.atLocation.store.type distribution.atLocation.store._rev \\\n", + "0 NaN NaN \n", + "1 NaN NaN \n", + "2 DiskStorage 1.0 \n", + "\n", + " distribution.contentSize.unitCode distribution.contentSize.value \\\n", + "0 NaN NaN \n", + "1 NaN NaN \n", + "2 bytes 52.0 \n", + "\n", + " distribution.contentUrl \\\n", + "0 NaN \n", + "1 NaN \n", + "2 https://sandbox.bluebrainnexus.io/v1/files/git... \n", + "\n", + " distribution.digest.algorithm \\\n", + "0 NaN \n", + "1 NaN \n", + "2 SHA-256 \n", + "\n", + " distribution.digest.value \\\n", + "0 NaN \n", + "1 NaN \n", + "2 1dacd765946963fda4949753659089c5f532714b418d30... \n", "\n", - " name email \n", - "0 Jane Doe NaN \n", - "1 Jane Doe [jane.doe@epfl.ch, jane.doe@example.org] \n", - "2 Jane Doe NaN " + " distribution.encodingFormat distribution.name \n", + "0 NaN NaN \n", + "1 NaN NaN \n", + "2 text/csv persons.csv " ] }, - "execution_count": 188, + "execution_count": 48, "metadata": {}, "output_type": "execute_result" } @@ -1006,7 +1070,7 @@ }, { "cell_type": "code", - "execution_count": 189, + "execution_count": 49, "metadata": {}, "outputs": [ { @@ -1032,7 +1096,6 @@ " \n", " id\n", " type\n", - " award\n", " name\n", " _constrainedBy\n", " _createdAt\n", @@ -1041,12 +1104,17 @@ " _incoming\n", " _outgoing\n", " _project\n", - " _rev\n", - " _schemaProject\n", - " _self\n", - " _updatedAt\n", - " _updatedBy\n", - " email\n", + " ...\n", + " distribution.atLocation.store.id\n", + " distribution.atLocation.store.type\n", + " distribution.atLocation.store._rev\n", + " distribution.contentSize.unitCode\n", + " distribution.contentSize.value\n", + " distribution.contentUrl\n", + " distribution.digest.algorithm\n", + " distribution.digest.value\n", + " distribution.encodingFormat\n", + " distribution.name\n", " \n", " \n", " \n", @@ -1054,81 +1122,94 @@ " 0\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " Person\n", - " [Nobel]\n", - " Jane Doe\n", + " John Smith\n", " https://bluebrain.github.io/nexus/schemas/unco...\n", - " 2024-02-01T17:12:35.988Z\n", + " 2024-02-13T13:04:27.840Z\n", " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", " False\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/projects/...\n", - " 1\n", - " https://sandbox.bluebrainnexus.io/v1/projects/...\n", - " https://sandbox.bluebrainnexus.io/v1/resources...\n", - " 2024-02-01T17:12:35.988Z\n", - " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", + " ...\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", " NaN\n", " \n", " \n", " 1\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " Person\n", - " [Nobel]\n", " Jane Doe\n", " https://bluebrain.github.io/nexus/schemas/unco...\n", - " 2024-02-01T17:12:36.480Z\n", + " 2024-02-13T13:04:27.842Z\n", " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", " False\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/projects/...\n", - " 3\n", - " https://sandbox.bluebrainnexus.io/v1/projects/...\n", - " https://sandbox.bluebrainnexus.io/v1/resources...\n", - " 2024-02-01T17:12:36.836Z\n", - " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", - " [jane.doe@epfl.ch, jane.doe@example.org]\n", + " ...\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", " \n", " \n", " 2\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " Person\n", - " [Nobel]\n", " Jane Doe\n", " https://bluebrain.github.io/nexus/schemas/unco...\n", - " 2024-02-01T17:40:39.386Z\n", + " 2024-02-13T13:04:28.270Z\n", " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", " False\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/projects/...\n", - " 1\n", - " https://sandbox.bluebrainnexus.io/v1/projects/...\n", - " https://sandbox.bluebrainnexus.io/v1/resources...\n", - " 2024-02-01T17:40:39.386Z\n", - " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", - " NaN\n", + " ...\n", + " https://bluebrain.github.io/nexus/vocabulary/d...\n", + " DiskStorage\n", + " 1.0\n", + " bytes\n", + " 52.0\n", + " https://sandbox.bluebrainnexus.io/v1/files/git...\n", + " SHA-256\n", + " 1dacd765946963fda4949753659089c5f532714b418d30...\n", + " text/csv\n", + " persons.csv\n", " \n", " \n", "\n", + "

3 rows × 27 columns

\n", "" ], "text/plain": [ - " id type award \\\n", - "0 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", - "1 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", - "2 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", + " id type name \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... Person John Smith \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... Person Jane Doe \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... Person Jane Doe \n", "\n", - " name _constrainedBy \\\n", - "0 Jane Doe https://bluebrain.github.io/nexus/schemas/unco... \n", - "1 Jane Doe https://bluebrain.github.io/nexus/schemas/unco... \n", - "2 Jane Doe https://bluebrain.github.io/nexus/schemas/unco... \n", + " _constrainedBy \\\n", + "0 https://bluebrain.github.io/nexus/schemas/unco... \n", + "1 https://bluebrain.github.io/nexus/schemas/unco... \n", + "2 https://bluebrain.github.io/nexus/schemas/unco... \n", "\n", " _createdAt \\\n", - "0 2024-02-01T17:12:35.988Z \n", - "1 2024-02-01T17:12:36.480Z \n", - "2 2024-02-01T17:40:39.386Z \n", + "0 2024-02-13T13:04:27.840Z \n", + "1 2024-02-13T13:04:27.842Z \n", + "2 2024-02-13T13:04:28.270Z \n", "\n", " _createdBy _deprecated \\\n", "0 https://sandbox.bluebrainnexus.io/v1/realms/gi... False \n", @@ -1145,38 +1226,50 @@ "1 https://sandbox.bluebrainnexus.io/v1/resources... \n", "2 https://sandbox.bluebrainnexus.io/v1/resources... \n", "\n", - " _project _rev \\\n", - "0 https://sandbox.bluebrainnexus.io/v1/projects/... 1 \n", - "1 https://sandbox.bluebrainnexus.io/v1/projects/... 3 \n", - "2 https://sandbox.bluebrainnexus.io/v1/projects/... 1 \n", + " _project ... \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/projects/... ... \n", + "1 https://sandbox.bluebrainnexus.io/v1/projects/... ... \n", + "2 https://sandbox.bluebrainnexus.io/v1/projects/... ... \n", "\n", - " _schemaProject \\\n", - "0 https://sandbox.bluebrainnexus.io/v1/projects/... \n", - "1 https://sandbox.bluebrainnexus.io/v1/projects/... \n", - "2 https://sandbox.bluebrainnexus.io/v1/projects/... \n", + " distribution.atLocation.store.id \\\n", + "0 NaN \n", + "1 NaN \n", + "2 https://bluebrain.github.io/nexus/vocabulary/d... \n", "\n", - " _self \\\n", - "0 https://sandbox.bluebrainnexus.io/v1/resources... \n", - "1 https://sandbox.bluebrainnexus.io/v1/resources... \n", - "2 https://sandbox.bluebrainnexus.io/v1/resources... \n", + " distribution.atLocation.store.type distribution.atLocation.store._rev \\\n", + "0 NaN NaN \n", + "1 NaN NaN \n", + "2 DiskStorage 1.0 \n", + "\n", + " distribution.contentSize.unitCode distribution.contentSize.value \\\n", + "0 NaN NaN \n", + "1 NaN NaN \n", + "2 bytes 52.0 \n", + "\n", + " distribution.contentUrl \\\n", + "0 NaN \n", + "1 NaN \n", + "2 https://sandbox.bluebrainnexus.io/v1/files/git... \n", + "\n", + " distribution.digest.algorithm \\\n", + "0 NaN \n", + "1 NaN \n", + "2 SHA-256 \n", "\n", - " _updatedAt \\\n", - "0 2024-02-01T17:12:35.988Z \n", - "1 2024-02-01T17:12:36.836Z \n", - "2 2024-02-01T17:40:39.386Z \n", + " distribution.digest.value \\\n", + "0 NaN \n", + "1 NaN \n", + "2 1dacd765946963fda4949753659089c5f532714b418d30... \n", "\n", - " _updatedBy \\\n", - "0 https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", - "1 https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", - "2 https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", + " distribution.encodingFormat distribution.name \n", + "0 NaN NaN \n", + "1 NaN NaN \n", + "2 text/csv persons.csv \n", "\n", - " email \n", - "0 NaN \n", - "1 [jane.doe@epfl.ch, jane.doe@example.org] \n", - "2 NaN " + "[3 rows x 27 columns]" ] }, - "execution_count": 189, + "execution_count": 49, "metadata": {}, "output_type": "execute_result" } @@ -1187,16 +1280,16 @@ }, { "cell_type": "code", - "execution_count": 190, + "execution_count": 50, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "False" + "True" ] }, - "execution_count": 190, + "execution_count": 50, "metadata": {}, "output_type": "execute_result" } @@ -1224,7 +1317,7 @@ }, { "cell_type": "code", - "execution_count": 191, + "execution_count": 51, "metadata": {}, "outputs": [], "source": [ @@ -1234,7 +1327,7 @@ }, { "cell_type": "code", - "execution_count": 192, + "execution_count": 52, "metadata": {}, "outputs": [ { @@ -1243,7 +1336,7 @@ "3" ] }, - "execution_count": 192, + "execution_count": 52, "metadata": {}, "output_type": "execute_result" } @@ -1254,7 +1347,7 @@ }, { "cell_type": "code", - "execution_count": 193, + "execution_count": 53, "metadata": { "scrolled": true }, @@ -1295,7 +1388,6 @@ " distribution.digest.value\n", " distribution.encodingFormat\n", " distribution.name\n", - " name\n", " \n", " \n", " \n", @@ -1316,13 +1408,12 @@ " 789aa07948683fe036ac29811814a826b703b562f7d168...\n", " text/tab-separated-values\n", " associations.tsv\n", - " NaN\n", " \n", " \n", " 1\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " Dataset\n", - " NaN\n", + " [{'type': 'Contribution', 'agent': {'type': 'P...\n", " DataDownload\n", " Location\n", " https://bluebrain.github.io/nexus/vocabulary/d...\n", @@ -1335,13 +1426,12 @@ " 789aa07948683fe036ac29811814a826b703b562f7d168...\n", " text/tab-separated-values\n", " associations.tsv\n", - " Interesting Persons\n", " \n", " \n", " 2\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " Dataset\n", - " NaN\n", + " [{'type': 'Contribution', 'agent': {'type': 'P...\n", " DataDownload\n", " Location\n", " https://bluebrain.github.io/nexus/vocabulary/d...\n", @@ -1354,7 +1444,6 @@ " 789aa07948683fe036ac29811814a826b703b562f7d168...\n", " text/tab-separated-values\n", " associations.tsv\n", - " Interesting Persons\n", " \n", " \n", "\n", @@ -1368,8 +1457,8 @@ "\n", " contribution distribution.type \\\n", "0 [{'type': 'Contribution', 'agent': {'type': 'P... DataDownload \n", - "1 NaN DataDownload \n", - "2 NaN DataDownload \n", + "1 [{'type': 'Contribution', 'agent': {'type': 'P... DataDownload \n", + "2 [{'type': 'Contribution', 'agent': {'type': 'P... DataDownload \n", "\n", " distribution.atLocation.type \\\n", "0 Location \n", @@ -1406,13 +1495,13 @@ "1 789aa07948683fe036ac29811814a826b703b562f7d168... \n", "2 789aa07948683fe036ac29811814a826b703b562f7d168... \n", "\n", - " distribution.encodingFormat distribution.name name \n", - "0 text/tab-separated-values associations.tsv NaN \n", - "1 text/tab-separated-values associations.tsv Interesting Persons \n", - "2 text/tab-separated-values associations.tsv Interesting Persons " + " distribution.encodingFormat distribution.name \n", + "0 text/tab-separated-values associations.tsv \n", + "1 text/tab-separated-values associations.tsv \n", + "2 text/tab-separated-values associations.tsv " ] }, - "execution_count": 193, + "execution_count": 53, "metadata": {}, "output_type": "execute_result" } @@ -1438,7 +1527,7 @@ }, { "cell_type": "code", - "execution_count": 194, + "execution_count": 54, "metadata": {}, "outputs": [], "source": [ @@ -1454,7 +1543,7 @@ }, { "cell_type": "code", - "execution_count": 195, + "execution_count": 55, "metadata": {}, "outputs": [ { @@ -1463,7 +1552,7 @@ "list" ] }, - "execution_count": 195, + "execution_count": 55, "metadata": {}, "output_type": "execute_result" } @@ -1474,7 +1563,7 @@ }, { "cell_type": "code", - "execution_count": 196, + "execution_count": 56, "metadata": {}, "outputs": [ { @@ -1483,7 +1572,7 @@ "0" ] }, - "execution_count": 196, + "execution_count": 56, "metadata": {}, "output_type": "execute_result" } @@ -1494,7 +1583,7 @@ }, { "cell_type": "code", - "execution_count": 197, + "execution_count": 57, "metadata": {}, "outputs": [ { @@ -1531,7 +1620,7 @@ "Index: []" ] }, - "execution_count": 197, + "execution_count": 57, "metadata": {}, "output_type": "execute_result" } @@ -1558,7 +1647,7 @@ }, { "cell_type": "code", - "execution_count": 198, + "execution_count": 58, "metadata": {}, "outputs": [ { @@ -1572,7 +1661,7 @@ " '__ge__ (GREATER_OR_Equal_Than)']" ] }, - "execution_count": 198, + "execution_count": 58, "metadata": {}, "output_type": "execute_result" } @@ -1583,7 +1672,7 @@ }, { "cell_type": "code", - "execution_count": 199, + "execution_count": 59, "metadata": {}, "outputs": [], "source": [ @@ -1598,7 +1687,7 @@ }, { "cell_type": "code", - "execution_count": 200, + "execution_count": 60, "metadata": {}, "outputs": [ { @@ -1607,7 +1696,7 @@ "list" ] }, - "execution_count": 200, + "execution_count": 60, "metadata": {}, "output_type": "execute_result" } @@ -1618,7 +1707,7 @@ }, { "cell_type": "code", - "execution_count": 201, + "execution_count": 61, "metadata": {}, "outputs": [ { @@ -1627,7 +1716,7 @@ "3" ] }, - "execution_count": 201, + "execution_count": 61, "metadata": {}, "output_type": "execute_result" } @@ -1638,7 +1727,7 @@ }, { "cell_type": "code", - "execution_count": 202, + "execution_count": 62, "metadata": {}, "outputs": [ { @@ -1673,6 +1762,7 @@ " distribution.contentSize.unitCode\n", " distribution.contentSize.value\n", " ...\n", + " _createdBy\n", " _deprecated\n", " _incoming\n", " _outgoing\n", @@ -1682,7 +1772,6 @@ " _self\n", " _updatedAt\n", " _updatedBy\n", - " name\n", " \n", " \n", " \n", @@ -1699,6 +1788,7 @@ " bytes\n", " 477\n", " ...\n", + " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", " False\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", @@ -1708,13 +1798,12 @@ " https://sandbox.bluebrainnexus.io/v1/resources...\n", " 2024-02-02T09:47:31.662Z\n", " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", - " NaN\n", " \n", " \n", " 1\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " Dataset\n", - " NaN\n", + " [{'type': 'Contribution', 'agent': {'type': 'P...\n", " DataDownload\n", " Location\n", " https://bluebrain.github.io/nexus/vocabulary/d...\n", @@ -1723,6 +1812,7 @@ " bytes\n", " 477\n", " ...\n", + " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", " False\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", @@ -1730,15 +1820,14 @@ " 1\n", " https://sandbox.bluebrainnexus.io/v1/projects/...\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", - " 2022-12-07T16:07:59.200Z\n", + " 2024-02-02T09:59:31.740Z\n", " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", - " Interesting Persons\n", " \n", " \n", " 2\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " Dataset\n", - " NaN\n", + " [{'type': 'Contribution', 'agent': {'type': 'P...\n", " DataDownload\n", " Location\n", " https://bluebrain.github.io/nexus/vocabulary/d...\n", @@ -1747,6 +1836,7 @@ " bytes\n", " 477\n", " ...\n", + " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", " False\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", @@ -1754,13 +1844,12 @@ " 1\n", " https://sandbox.bluebrainnexus.io/v1/projects/...\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", - " 2022-12-08T09:46:09.139Z\n", + " 2024-02-02T15:21:32.898Z\n", " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", - " Interesting Persons\n", " \n", " \n", "\n", - "

3 rows × 28 columns

\n", + "

3 rows × 27 columns

\n", "" ], "text/plain": [ @@ -1771,8 +1860,8 @@ "\n", " contribution distribution.type \\\n", "0 [{'type': 'Contribution', 'agent': {'type': 'P... DataDownload \n", - "1 NaN DataDownload \n", - "2 NaN DataDownload \n", + "1 [{'type': 'Contribution', 'agent': {'type': 'P... DataDownload \n", + "2 [{'type': 'Contribution', 'agent': {'type': 'P... DataDownload \n", "\n", " distribution.atLocation.type \\\n", "0 Location \n", @@ -1794,10 +1883,15 @@ "1 bytes 477 ... \n", "2 bytes 477 ... \n", "\n", - " _deprecated _incoming \\\n", - "0 False https://sandbox.bluebrainnexus.io/v1/resources... \n", - "1 False https://sandbox.bluebrainnexus.io/v1/resources... \n", - "2 False https://sandbox.bluebrainnexus.io/v1/resources... \n", + " _createdBy _deprecated \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/realms/gi... False \n", + "1 https://sandbox.bluebrainnexus.io/v1/realms/gi... False \n", + "2 https://sandbox.bluebrainnexus.io/v1/realms/gi... False \n", + "\n", + " _incoming \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... \n", "\n", " _outgoing \\\n", "0 https://sandbox.bluebrainnexus.io/v1/resources... \n", @@ -1819,20 +1913,15 @@ "1 https://sandbox.bluebrainnexus.io/v1/resources... \n", "2 https://sandbox.bluebrainnexus.io/v1/resources... \n", "\n", - " _updatedAt \\\n", - "0 2024-02-02T09:47:31.662Z \n", - "1 2022-12-07T16:07:59.200Z \n", - "2 2022-12-08T09:46:09.139Z \n", + " _updatedAt _updatedBy \n", + "0 2024-02-02T09:47:31.662Z https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", + "1 2024-02-02T09:59:31.740Z https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", + "2 2024-02-02T15:21:32.898Z https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", "\n", - " _updatedBy name \n", - "0 https://sandbox.bluebrainnexus.io/v1/realms/gi... NaN \n", - "1 https://sandbox.bluebrainnexus.io/v1/realms/gi... Interesting Persons \n", - "2 https://sandbox.bluebrainnexus.io/v1/realms/gi... Interesting Persons \n", - "\n", - "[3 rows x 28 columns]" + "[3 rows x 27 columns]" ] }, - "execution_count": 202, + "execution_count": 62, "metadata": {}, "output_type": "execute_result" } @@ -1866,7 +1955,7 @@ }, { "cell_type": "code", - "execution_count": 203, + "execution_count": 63, "metadata": {}, "outputs": [], "source": [ @@ -1877,7 +1966,7 @@ }, { "cell_type": "code", - "execution_count": 204, + "execution_count": 64, "metadata": {}, "outputs": [ { @@ -1886,7 +1975,7 @@ "list" ] }, - "execution_count": 204, + "execution_count": 64, "metadata": {}, "output_type": "execute_result" } @@ -1897,7 +1986,7 @@ }, { "cell_type": "code", - "execution_count": 205, + "execution_count": 65, "metadata": {}, "outputs": [ { @@ -1906,7 +1995,7 @@ "3" ] }, - "execution_count": 205, + "execution_count": 65, "metadata": {}, "output_type": "execute_result" } @@ -1917,7 +2006,7 @@ }, { "cell_type": "code", - "execution_count": 206, + "execution_count": 66, "metadata": {}, "outputs": [ { @@ -1943,7 +2032,6 @@ " \n", " id\n", " type\n", - " award\n", " name\n", " _constrainedBy\n", " _createdAt\n", @@ -1952,12 +2040,17 @@ " _incoming\n", " _outgoing\n", " _project\n", - " _rev\n", - " _schemaProject\n", - " _self\n", - " _updatedAt\n", - " _updatedBy\n", - " email\n", + " ...\n", + " distribution.atLocation.store.id\n", + " distribution.atLocation.store.type\n", + " distribution.atLocation.store._rev\n", + " distribution.contentSize.unitCode\n", + " distribution.contentSize.value\n", + " distribution.contentUrl\n", + " distribution.digest.algorithm\n", + " distribution.digest.value\n", + " distribution.encodingFormat\n", + " distribution.name\n", " \n", " \n", " \n", @@ -1965,81 +2058,94 @@ " 0\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " Person\n", - " [Nobel]\n", - " Jane Doe\n", + " John Smith\n", " https://bluebrain.github.io/nexus/schemas/unco...\n", - " 2024-02-01T17:12:35.988Z\n", + " 2024-02-13T13:04:27.840Z\n", " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", " False\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/projects/...\n", - " 1\n", - " https://sandbox.bluebrainnexus.io/v1/projects/...\n", - " https://sandbox.bluebrainnexus.io/v1/resources...\n", - " 2024-02-01T17:12:35.988Z\n", - " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", + " ...\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", " NaN\n", " \n", " \n", " 1\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " Person\n", - " [Nobel]\n", " Jane Doe\n", " https://bluebrain.github.io/nexus/schemas/unco...\n", - " 2024-02-01T17:12:36.480Z\n", + " 2024-02-13T13:04:27.842Z\n", " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", " False\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/projects/...\n", - " 3\n", - " https://sandbox.bluebrainnexus.io/v1/projects/...\n", - " https://sandbox.bluebrainnexus.io/v1/resources...\n", - " 2024-02-01T17:12:36.836Z\n", - " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", - " [jane.doe@epfl.ch, jane.doe@example.org]\n", + " ...\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", + " NaN\n", " \n", " \n", " 2\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " Person\n", - " [Nobel]\n", " Jane Doe\n", " https://bluebrain.github.io/nexus/schemas/unco...\n", - " 2024-02-01T17:40:39.386Z\n", + " 2024-02-13T13:04:28.270Z\n", " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", " False\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", " https://sandbox.bluebrainnexus.io/v1/projects/...\n", - " 1\n", - " https://sandbox.bluebrainnexus.io/v1/projects/...\n", - " https://sandbox.bluebrainnexus.io/v1/resources...\n", - " 2024-02-01T17:40:39.386Z\n", - " https://sandbox.bluebrainnexus.io/v1/realms/gi...\n", - " NaN\n", + " ...\n", + " https://bluebrain.github.io/nexus/vocabulary/d...\n", + " DiskStorage\n", + " 1.0\n", + " bytes\n", + " 52.0\n", + " https://sandbox.bluebrainnexus.io/v1/files/git...\n", + " SHA-256\n", + " 1dacd765946963fda4949753659089c5f532714b418d30...\n", + " text/csv\n", + " persons.csv\n", " \n", " \n", "\n", + "

3 rows × 27 columns

\n", "" ], "text/plain": [ - " id type award \\\n", - "0 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", - "1 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", - "2 https://sandbox.bluebrainnexus.io/v1/resources... Person [Nobel] \n", + " id type name \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/resources... Person John Smith \n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... Person Jane Doe \n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... Person Jane Doe \n", "\n", - " name _constrainedBy \\\n", - "0 Jane Doe https://bluebrain.github.io/nexus/schemas/unco... \n", - "1 Jane Doe https://bluebrain.github.io/nexus/schemas/unco... \n", - "2 Jane Doe https://bluebrain.github.io/nexus/schemas/unco... \n", + " _constrainedBy \\\n", + "0 https://bluebrain.github.io/nexus/schemas/unco... \n", + "1 https://bluebrain.github.io/nexus/schemas/unco... \n", + "2 https://bluebrain.github.io/nexus/schemas/unco... \n", "\n", " _createdAt \\\n", - "0 2024-02-01T17:12:35.988Z \n", - "1 2024-02-01T17:12:36.480Z \n", - "2 2024-02-01T17:40:39.386Z \n", + "0 2024-02-13T13:04:27.840Z \n", + "1 2024-02-13T13:04:27.842Z \n", + "2 2024-02-13T13:04:28.270Z \n", "\n", " _createdBy _deprecated \\\n", "0 https://sandbox.bluebrainnexus.io/v1/realms/gi... False \n", @@ -2056,38 +2162,50 @@ "1 https://sandbox.bluebrainnexus.io/v1/resources... \n", "2 https://sandbox.bluebrainnexus.io/v1/resources... \n", "\n", - " _project _rev \\\n", - "0 https://sandbox.bluebrainnexus.io/v1/projects/... 1 \n", - "1 https://sandbox.bluebrainnexus.io/v1/projects/... 3 \n", - "2 https://sandbox.bluebrainnexus.io/v1/projects/... 1 \n", + " _project ... \\\n", + "0 https://sandbox.bluebrainnexus.io/v1/projects/... ... \n", + "1 https://sandbox.bluebrainnexus.io/v1/projects/... ... \n", + "2 https://sandbox.bluebrainnexus.io/v1/projects/... ... \n", "\n", - " _schemaProject \\\n", - "0 https://sandbox.bluebrainnexus.io/v1/projects/... \n", - "1 https://sandbox.bluebrainnexus.io/v1/projects/... \n", - "2 https://sandbox.bluebrainnexus.io/v1/projects/... \n", + " distribution.atLocation.store.id \\\n", + "0 NaN \n", + "1 NaN \n", + "2 https://bluebrain.github.io/nexus/vocabulary/d... \n", "\n", - " _self \\\n", - "0 https://sandbox.bluebrainnexus.io/v1/resources... \n", - "1 https://sandbox.bluebrainnexus.io/v1/resources... \n", - "2 https://sandbox.bluebrainnexus.io/v1/resources... \n", + " distribution.atLocation.store.type distribution.atLocation.store._rev \\\n", + "0 NaN NaN \n", + "1 NaN NaN \n", + "2 DiskStorage 1.0 \n", + "\n", + " distribution.contentSize.unitCode distribution.contentSize.value \\\n", + "0 NaN NaN \n", + "1 NaN NaN \n", + "2 bytes 52.0 \n", + "\n", + " distribution.contentUrl \\\n", + "0 NaN \n", + "1 NaN \n", + "2 https://sandbox.bluebrainnexus.io/v1/files/git... \n", + "\n", + " distribution.digest.algorithm \\\n", + "0 NaN \n", + "1 NaN \n", + "2 SHA-256 \n", "\n", - " _updatedAt \\\n", - "0 2024-02-01T17:12:35.988Z \n", - "1 2024-02-01T17:12:36.836Z \n", - "2 2024-02-01T17:40:39.386Z \n", + " distribution.digest.value \\\n", + "0 NaN \n", + "1 NaN \n", + "2 1dacd765946963fda4949753659089c5f532714b418d30... \n", "\n", - " _updatedBy \\\n", - "0 https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", - "1 https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", - "2 https://sandbox.bluebrainnexus.io/v1/realms/gi... \n", + " distribution.encodingFormat distribution.name \n", + "0 NaN NaN \n", + "1 NaN NaN \n", + "2 text/csv persons.csv \n", "\n", - " email \n", - "0 NaN \n", - "1 [jane.doe@epfl.ch, jane.doe@example.org] \n", - "2 NaN " + "[3 rows x 27 columns]" ] }, - "execution_count": 206, + "execution_count": 66, "metadata": {}, "output_type": "execute_result" } @@ -2106,7 +2224,7 @@ }, { "cell_type": "code", - "execution_count": 207, + "execution_count": 67, "metadata": {}, "outputs": [], "source": [ @@ -2119,7 +2237,7 @@ }, { "cell_type": "code", - "execution_count": 208, + "execution_count": 68, "metadata": {}, "outputs": [ { @@ -2128,7 +2246,7 @@ "list" ] }, - "execution_count": 208, + "execution_count": 68, "metadata": {}, "output_type": "execute_result" } @@ -2139,7 +2257,7 @@ }, { "cell_type": "code", - "execution_count": 209, + "execution_count": 69, "metadata": {}, "outputs": [ { @@ -2148,7 +2266,7 @@ "3" ] }, - "execution_count": 209, + "execution_count": 69, "metadata": {}, "output_type": "execute_result" } @@ -2159,7 +2277,7 @@ }, { "cell_type": "code", - "execution_count": 210, + "execution_count": 70, "metadata": {}, "outputs": [ { @@ -2214,7 +2332,7 @@ "2 https://sandbox.bluebrainnexus.io/v1/resources... http://schema.org/Person" ] }, - "execution_count": 210, + "execution_count": 70, "metadata": {}, "output_type": "execute_result" } @@ -2225,7 +2343,7 @@ }, { "cell_type": "code", - "execution_count": 211, + "execution_count": 71, "metadata": {}, "outputs": [ { @@ -2234,7 +2352,7 @@ "False" ] }, - "execution_count": 211, + "execution_count": 71, "metadata": {}, "output_type": "execute_result" } @@ -2246,7 +2364,7 @@ }, { "cell_type": "code", - "execution_count": 212, + "execution_count": 72, "metadata": {}, "outputs": [ { @@ -2255,7 +2373,7 @@ "'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/e01663b6-604b-42db-b958-da9fbc1baca2'" ] }, - "execution_count": 212, + "execution_count": 72, "metadata": {}, "output_type": "execute_result" } @@ -2266,7 +2384,7 @@ }, { "cell_type": "code", - "execution_count": 213, + "execution_count": 73, "metadata": {}, "outputs": [ { @@ -2275,7 +2393,7 @@ "'http://schema.org/Person'" ] }, - "execution_count": 213, + "execution_count": 73, "metadata": {}, "output_type": "execute_result" } @@ -2300,7 +2418,7 @@ }, { "cell_type": "code", - "execution_count": 214, + "execution_count": 74, "metadata": {}, "outputs": [], "source": [ @@ -2338,16 +2456,16 @@ }, { "cell_type": "code", - "execution_count": 215, + "execution_count": 75, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/6562a440-386a-4128-9fe7-f42f0c9b6f38'" + "'https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/69311bb0-7509-4e39-933d-6ea1865ed9ed'" ] }, - "execution_count": 215, + "execution_count": 75, "metadata": {}, "output_type": "execute_result" } @@ -2366,7 +2484,7 @@ }, { "cell_type": "code", - "execution_count": 281, + "execution_count": 76, "metadata": {}, "outputs": [ { @@ -2380,10 +2498,10 @@ { "data": { "text/plain": [ - "(0, 100)" + "(0, 0)" ] }, - "execution_count": 281, + "execution_count": 76, "metadata": {}, "output_type": "execute_result" } @@ -2414,7 +2532,7 @@ }, { "cell_type": "code", - "execution_count": 217, + "execution_count": 77, "metadata": {}, "outputs": [], "source": [ @@ -2423,7 +2541,7 @@ }, { "cell_type": "code", - "execution_count": 218, + "execution_count": 78, "metadata": {}, "outputs": [ { @@ -2432,7 +2550,7 @@ "list" ] }, - "execution_count": 218, + "execution_count": 78, "metadata": {}, "output_type": "execute_result" } @@ -2443,7 +2561,7 @@ }, { "cell_type": "code", - "execution_count": 219, + "execution_count": 79, "metadata": {}, "outputs": [ { @@ -2452,7 +2570,7 @@ "3" ] }, - "execution_count": 219, + "execution_count": 79, "metadata": {}, "output_type": "execute_result" } @@ -2463,7 +2581,7 @@ }, { "cell_type": "code", - "execution_count": 220, + "execution_count": 80, "metadata": {}, "outputs": [ { @@ -2640,7 +2758,7 @@ "2 NaN NaN NaN " ] }, - "execution_count": 220, + "execution_count": 80, "metadata": {}, "output_type": "execute_result" } @@ -2651,7 +2769,7 @@ }, { "cell_type": "code", - "execution_count": 221, + "execution_count": 81, "metadata": {}, "outputs": [], "source": [ @@ -2661,7 +2779,7 @@ }, { "cell_type": "code", - "execution_count": 222, + "execution_count": 82, "metadata": {}, "outputs": [ { @@ -2670,7 +2788,7 @@ "list" ] }, - "execution_count": 222, + "execution_count": 82, "metadata": {}, "output_type": "execute_result" } @@ -2681,7 +2799,7 @@ }, { "cell_type": "code", - "execution_count": 223, + "execution_count": 83, "metadata": {}, "outputs": [ { @@ -2690,7 +2808,7 @@ "0" ] }, - "execution_count": 223, + "execution_count": 83, "metadata": {}, "output_type": "execute_result" } @@ -2701,7 +2819,7 @@ }, { "cell_type": "code", - "execution_count": 224, + "execution_count": 84, "metadata": {}, "outputs": [ { @@ -2738,7 +2856,7 @@ "Index: []" ] }, - "execution_count": 224, + "execution_count": 84, "metadata": {}, "output_type": "execute_result" } @@ -2758,7 +2876,7 @@ }, { "cell_type": "code", - "execution_count": 225, + "execution_count": 85, "metadata": {}, "outputs": [], "source": [ @@ -2767,7 +2885,7 @@ }, { "cell_type": "code", - "execution_count": 226, + "execution_count": 86, "metadata": {}, "outputs": [ { @@ -2776,7 +2894,7 @@ "list" ] }, - "execution_count": 226, + "execution_count": 86, "metadata": {}, "output_type": "execute_result" } @@ -2787,7 +2905,7 @@ }, { "cell_type": "code", - "execution_count": 227, + "execution_count": 87, "metadata": {}, "outputs": [ { @@ -2796,7 +2914,7 @@ "3" ] }, - "execution_count": 227, + "execution_count": 87, "metadata": {}, "output_type": "execute_result" } @@ -2807,7 +2925,7 @@ }, { "cell_type": "code", - "execution_count": 228, + "execution_count": 88, "metadata": {}, "outputs": [ { @@ -2984,7 +3102,7 @@ "2 NaN NaN NaN " ] }, - "execution_count": 228, + "execution_count": 88, "metadata": {}, "output_type": "execute_result" } @@ -3025,7 +3143,7 @@ }, { "cell_type": "code", - "execution_count": 229, + "execution_count": 89, "metadata": {}, "outputs": [], "source": [ @@ -3035,7 +3153,7 @@ }, { "cell_type": "code", - "execution_count": 230, + "execution_count": 90, "metadata": {}, "outputs": [], "source": [ @@ -3045,7 +3163,7 @@ }, { "cell_type": "code", - "execution_count": 231, + "execution_count": 91, "metadata": {}, "outputs": [], "source": [ @@ -3054,7 +3172,7 @@ }, { "cell_type": "code", - "execution_count": 232, + "execution_count": 92, "metadata": {}, "outputs": [ { @@ -3072,7 +3190,7 @@ }, { "cell_type": "code", - "execution_count": 233, + "execution_count": 93, "metadata": { "scrolled": true }, @@ -3184,7 +3302,11 @@ " contentSize:\n", " {\n", " unitCode: \"\"\n", - " value: \"\"\n", + " value:\n", + " [\n", + " 0.0\n", + " 0\n", + " ]\n", " }\n", " digest:\n", " {\n", @@ -3226,7 +3348,7 @@ }, { "cell_type": "code", - "execution_count": 234, + "execution_count": 94, "metadata": {}, "outputs": [], "source": [ @@ -3242,7 +3364,7 @@ }, { "cell_type": "code", - "execution_count": 235, + "execution_count": 95, "metadata": {}, "outputs": [], "source": [ @@ -3251,7 +3373,7 @@ }, { "cell_type": "code", - "execution_count": 236, + "execution_count": 96, "metadata": {}, "outputs": [ { @@ -3260,7 +3382,7 @@ "list" ] }, - "execution_count": 236, + "execution_count": 96, "metadata": {}, "output_type": "execute_result" } @@ -3271,7 +3393,7 @@ }, { "cell_type": "code", - "execution_count": 237, + "execution_count": 97, "metadata": {}, "outputs": [ { @@ -3280,7 +3402,7 @@ "3" ] }, - "execution_count": 237, + "execution_count": 97, "metadata": {}, "output_type": "execute_result" } @@ -3291,7 +3413,7 @@ }, { "cell_type": "code", - "execution_count": 238, + "execution_count": 98, "metadata": {}, "outputs": [ { @@ -3299,9 +3421,9 @@ "output_type": "stream", "text": [ "{\n", - " id: https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/f0689ed3-29b4-4462-867c-73e53197ec37\n", - " contributor: t3661\n", - " name: Jane Doe\n", + " id: https://sandbox.bluebrainnexus.io/v1/resources/github-users/ssssarah/_/ca722ef8-2295-4cf7-a35b-3c1cf3037232\n", + " contributor: t3532\n", + " name: John Smith\n", "}\n" ] } @@ -3312,7 +3434,7 @@ }, { "cell_type": "code", - "execution_count": 239, + "execution_count": 99, "metadata": {}, "outputs": [ { @@ -3345,19 +3467,19 @@ " \n", " 0\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", - " t3661\n", - " Jane Doe\n", + " t3532\n", + " John Smith\n", " \n", " \n", " 1\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", - " t3662\n", - " John Smith\n", + " t3533\n", + " Jane Doe\n", " \n", " \n", " 2\n", " https://sandbox.bluebrainnexus.io/v1/resources...\n", - " t1771\n", + " t3549\n", " John Smith\n", " \n", " \n", @@ -3366,12 +3488,12 @@ ], "text/plain": [ " id contributor name\n", - "0 https://sandbox.bluebrainnexus.io/v1/resources... t3661 Jane Doe\n", - "1 https://sandbox.bluebrainnexus.io/v1/resources... t3662 John Smith\n", - "2 https://sandbox.bluebrainnexus.io/v1/resources... t1771 John Smith" + "0 https://sandbox.bluebrainnexus.io/v1/resources... t3532 John Smith\n", + "1 https://sandbox.bluebrainnexus.io/v1/resources... t3533 Jane Doe\n", + "2 https://sandbox.bluebrainnexus.io/v1/resources... t3549 John Smith" ] }, - "execution_count": 239, + "execution_count": 99, "metadata": {}, "output_type": "execute_result" } @@ -3390,7 +3512,7 @@ }, { "cell_type": "code", - "execution_count": 240, + "execution_count": 100, "metadata": {}, "outputs": [ { @@ -3442,7 +3564,7 @@ }, { "cell_type": "code", - "execution_count": 241, + "execution_count": 101, "metadata": {}, "outputs": [], "source": [ @@ -3478,7 +3600,7 @@ }, { "cell_type": "code", - "execution_count": 242, + "execution_count": 102, "metadata": {}, "outputs": [ { @@ -3523,7 +3645,7 @@ }, { "cell_type": "code", - "execution_count": 243, + "execution_count": 103, "metadata": {}, "outputs": [ { @@ -3532,7 +3654,7 @@ "list" ] }, - "execution_count": 243, + "execution_count": 103, "metadata": {}, "output_type": "execute_result" } @@ -3543,7 +3665,7 @@ }, { "cell_type": "code", - "execution_count": 244, + "execution_count": 104, "metadata": {}, "outputs": [ { @@ -3552,7 +3674,7 @@ "3" ] }, - "execution_count": 244, + "execution_count": 104, "metadata": {}, "output_type": "execute_result" } @@ -3563,7 +3685,7 @@ }, { "cell_type": "code", - "execution_count": 245, + "execution_count": 105, "metadata": {}, "outputs": [ { @@ -3572,7 +3694,7 @@ "kgforge.core.resource.Resource" ] }, - "execution_count": 245, + "execution_count": 105, "metadata": {}, "output_type": "execute_result" } @@ -3583,7 +3705,7 @@ }, { "cell_type": "code", - "execution_count": 246, + "execution_count": 106, "metadata": {}, "outputs": [ { @@ -3638,7 +3760,7 @@ "2 https://sandbox.bluebrainnexus.io/v1/resources... Jane Doe" ] }, - "execution_count": 246, + "execution_count": 106, "metadata": {}, "output_type": "execute_result" } @@ -3665,7 +3787,7 @@ }, { "cell_type": "code", - "execution_count": 247, + "execution_count": 107, "metadata": {}, "outputs": [], "source": [ @@ -3699,7 +3821,7 @@ }, { "cell_type": "code", - "execution_count": 248, + "execution_count": 108, "metadata": {}, "outputs": [ { @@ -3742,16 +3864,16 @@ }, { "cell_type": "code", - "execution_count": 249, + "execution_count": 109, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "70" + "108" ] }, - "execution_count": 249, + "execution_count": 109, "metadata": {}, "output_type": "execute_result" } @@ -3770,7 +3892,7 @@ }, { "cell_type": "code", - "execution_count": 250, + "execution_count": 110, "metadata": {}, "outputs": [], "source": [ @@ -3786,7 +3908,7 @@ }, { "cell_type": "code", - "execution_count": 251, + "execution_count": 111, "metadata": {}, "outputs": [ { @@ -3827,16 +3949,16 @@ }, { "cell_type": "code", - "execution_count": 252, + "execution_count": 112, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "70" + "108" ] }, - "execution_count": 252, + "execution_count": 112, "metadata": {}, "output_type": "execute_result" } @@ -3865,7 +3987,7 @@ }, { "cell_type": "code", - "execution_count": 253, + "execution_count": 113, "metadata": {}, "outputs": [], "source": [ @@ -3875,7 +3997,7 @@ }, { "cell_type": "code", - "execution_count": 254, + "execution_count": 114, "metadata": {}, "outputs": [], "source": [ @@ -3885,7 +4007,7 @@ }, { "cell_type": "code", - "execution_count": 255, + "execution_count": 115, "metadata": {}, "outputs": [], "source": [ @@ -3894,7 +4016,7 @@ }, { "cell_type": "code", - "execution_count": 256, + "execution_count": 116, "metadata": {}, "outputs": [ { @@ -3920,7 +4042,7 @@ }, { "cell_type": "code", - "execution_count": 257, + "execution_count": 117, "metadata": {}, "outputs": [], "source": [ @@ -3943,7 +4065,7 @@ }, { "cell_type": "code", - "execution_count": 258, + "execution_count": 118, "metadata": {}, "outputs": [], "source": [ @@ -3953,7 +4075,7 @@ }, { "cell_type": "code", - "execution_count": 259, + "execution_count": 119, "metadata": {}, "outputs": [ { @@ -3962,7 +4084,7 @@ "list" ] }, - "execution_count": 259, + "execution_count": 119, "metadata": {}, "output_type": "execute_result" } @@ -3973,7 +4095,7 @@ }, { "cell_type": "code", - "execution_count": 260, + "execution_count": 120, "metadata": {}, "outputs": [ { @@ -3982,7 +4104,7 @@ "3" ] }, - "execution_count": 260, + "execution_count": 120, "metadata": {}, "output_type": "execute_result" } @@ -3993,7 +4115,7 @@ }, { "cell_type": "code", - "execution_count": 261, + "execution_count": 121, "metadata": {}, "outputs": [ { @@ -4002,7 +4124,7 @@ "kgforge.core.resource.Resource" ] }, - "execution_count": 261, + "execution_count": 121, "metadata": {}, "output_type": "execute_result" } @@ -4013,7 +4135,7 @@ }, { "cell_type": "code", - "execution_count": 262, + "execution_count": 122, "metadata": {}, "outputs": [ { @@ -4068,7 +4190,7 @@ "2 https://bbp.epfl.ch/neurosciencegraph/data/neu... AA1544" ] }, - "execution_count": 262, + "execution_count": 122, "metadata": {}, "output_type": "execute_result" } @@ -4077,6 +4199,66 @@ "forge.as_dataframe(resources)" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### ElasticSearch results as dictionaries" + ] + }, + { + "cell_type": "code", + "execution_count": 136, + "metadata": {}, + "outputs": [], + "source": [ + "resources_2 = forge.elastic(query, limit=3, as_resource=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 137, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "dict" + ] + }, + "execution_count": 137, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(resources_2[0])" + ] + }, + { + "cell_type": "code", + "execution_count": 138, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'_id': 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/25ca99ad-495d-4962-99de-9d4abbc5521c',\n", + " '_index': 'nexus_7018fa21-cf03-4b16-b603-db111f6b8527_1',\n", + " '_score': 1.5287807,\n", + " '_source': {'@id': 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/25ca99ad-495d-4962-99de-9d4abbc5521c',\n", + " 'name': 'AA1543'}}" + ] + }, + "execution_count": 138, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "resources_2[0]" + ] + }, { "attachments": {}, "cell_type": "markdown", @@ -4095,7 +4277,7 @@ }, { "cell_type": "code", - "execution_count": 263, + "execution_count": 123, "metadata": {}, "outputs": [], "source": [ @@ -4104,7 +4286,7 @@ }, { "cell_type": "code", - "execution_count": 264, + "execution_count": 124, "metadata": {}, "outputs": [ { @@ -4126,7 +4308,7 @@ }, { "cell_type": "code", - "execution_count": 265, + "execution_count": 125, "metadata": {}, "outputs": [], "source": [ @@ -4135,7 +4317,7 @@ }, { "cell_type": "code", - "execution_count": 266, + "execution_count": 126, "metadata": {}, "outputs": [], "source": [ @@ -4144,7 +4326,7 @@ }, { "cell_type": "code", - "execution_count": 267, + "execution_count": 127, "metadata": {}, "outputs": [ { @@ -4162,7 +4344,7 @@ }, { "cell_type": "code", - "execution_count": 268, + "execution_count": 128, "metadata": {}, "outputs": [], "source": [ @@ -4177,7 +4359,7 @@ }, { "cell_type": "code", - "execution_count": 269, + "execution_count": 129, "metadata": {}, "outputs": [], "source": [ @@ -4187,7 +4369,7 @@ }, { "cell_type": "code", - "execution_count": 270, + "execution_count": 130, "metadata": {}, "outputs": [], "source": [ @@ -4198,14 +4380,14 @@ }, { "cell_type": "code", - "execution_count": 271, + "execution_count": 131, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "total 3632\n", + "total 6352\n", "-rw-r--r--@ 1 mouffok 10067 477 Oct 20 10:54 associations.tsv\n", "-rw-r--r--@ 1 mouffok 10067 477 Nov 23 15:10 associations.tsv.20231123151033\n", "-rw-r--r--@ 1 mouffok 10067 477 Nov 23 15:10 associations.tsv.20231123151035\n", @@ -4218,6 +4400,15 @@ "-rw-r--r-- 1 mouffok 10067 477 Feb 1 18:40 associations.tsv.20240201184048\n", "-rw-r--r-- 1 mouffok 10067 477 Feb 2 10:47 associations.tsv.20240202104741\n", "-rw-r--r-- 1 mouffok 10067 477 Feb 2 10:59 associations.tsv.20240202105941\n", + "-rw-r--r-- 1 mouffok 10067 477 Feb 2 16:41 associations.tsv.20240202164100\n", + "-rw-r--r-- 1 mouffok 10067 477 Feb 5 18:34 associations.tsv.20240205183409\n", + "-rw-r--r-- 1 mouffok 10067 477 Feb 5 18:34 associations.tsv.20240205183410\n", + "-rw-r--r-- 1 mouffok 10067 477 Feb 5 18:34 associations.tsv.20240205183417\n", + "-rw-r--r-- 1 mouffok 10067 477 Feb 5 18:36 associations.tsv.20240205183603\n", + "-rw-r--r-- 1 mouffok 10067 477 Feb 6 16:09 associations.tsv.20240206160920\n", + "-rw-r--r--@ 1 mouffok 10067 477 Feb 13 14:16 associations.tsv.20240213141617\n", + "-rw-r--r-- 1 mouffok 10067 477 Feb 14 16:14 associations.tsv.20240214161402\n", + "-rw-r--r-- 1 mouffok 10067 477 Feb 15 14:28 associations.tsv.20240215142837\n", "-rw-r--r--@ 1 mouffok 10067 16 Oct 20 10:54 my_data.xwz\n", "-rw-r--r-- 1 mouffok 10067 16 Nov 23 15:41 my_data.xwz.20231123154107\n", "-rw-r--r--@ 1 mouffok 10067 16 Nov 27 14:24 my_data.xwz.20231127142458\n", @@ -4226,6 +4417,12 @@ "-rw-r--r-- 1 mouffok 10067 16 Feb 1 18:40 my_data.xwz.20240201184048\n", "-rw-r--r-- 1 mouffok 10067 16 Feb 2 10:47 my_data.xwz.20240202104741\n", "-rw-r--r-- 1 mouffok 10067 16 Feb 2 10:59 my_data.xwz.20240202105941\n", + "-rw-r--r-- 1 mouffok 10067 16 Feb 2 16:41 my_data.xwz.20240202164100\n", + "-rw-r--r-- 1 mouffok 10067 16 Feb 5 18:36 my_data.xwz.20240205183603\n", + "-rw-r--r-- 1 mouffok 10067 16 Feb 6 16:09 my_data.xwz.20240206160920\n", + "-rw-r--r--@ 1 mouffok 10067 16 Feb 13 14:16 my_data.xwz.20240213141617\n", + "-rw-r--r-- 1 mouffok 10067 16 Feb 14 16:14 my_data.xwz.20240214161402\n", + "-rw-r--r-- 1 mouffok 10067 16 Feb 15 14:28 my_data.xwz.20240215142837\n", "-rw-r--r--@ 1 mouffok 10067 24 Oct 20 10:54 my_data_derived.txt\n", "-rw-r--r-- 1 mouffok 10067 24 Nov 23 15:41 my_data_derived.txt.20231123154107\n", "-rw-r--r--@ 1 mouffok 10067 24 Nov 27 14:24 my_data_derived.txt.20231127142458\n", @@ -4234,6 +4431,12 @@ "-rw-r--r-- 1 mouffok 10067 24 Feb 1 18:40 my_data_derived.txt.20240201184048\n", "-rw-r--r-- 1 mouffok 10067 24 Feb 2 10:47 my_data_derived.txt.20240202104741\n", "-rw-r--r-- 1 mouffok 10067 24 Feb 2 10:59 my_data_derived.txt.20240202105941\n", + "-rw-r--r-- 1 mouffok 10067 24 Feb 2 16:41 my_data_derived.txt.20240202164100\n", + "-rw-r--r-- 1 mouffok 10067 24 Feb 5 18:36 my_data_derived.txt.20240205183603\n", + "-rw-r--r-- 1 mouffok 10067 24 Feb 6 16:09 my_data_derived.txt.20240206160920\n", + "-rw-r--r--@ 1 mouffok 10067 24 Feb 13 14:16 my_data_derived.txt.20240213141617\n", + "-rw-r--r-- 1 mouffok 10067 24 Feb 14 16:14 my_data_derived.txt.20240214161402\n", + "-rw-r--r-- 1 mouffok 10067 24 Feb 15 14:28 my_data_derived.txt.20240215142837\n", "-rw-r--r--@ 1 mouffok 10067 126 Oct 20 10:54 persons-with-id.csv\n", "-rw-r--r-- 1 mouffok 10067 126 Nov 23 15:41 persons-with-id.csv.20231123154107\n", "-rw-r--r--@ 1 mouffok 10067 126 Nov 27 14:24 persons-with-id.csv.20231127142458\n", @@ -4242,6 +4445,12 @@ "-rw-r--r-- 1 mouffok 10067 126 Feb 1 18:40 persons-with-id.csv.20240201184048\n", "-rw-r--r-- 1 mouffok 10067 126 Feb 2 10:47 persons-with-id.csv.20240202104741\n", "-rw-r--r-- 1 mouffok 10067 126 Feb 2 10:59 persons-with-id.csv.20240202105941\n", + "-rw-r--r-- 1 mouffok 10067 126 Feb 2 16:41 persons-with-id.csv.20240202164100\n", + "-rw-r--r-- 1 mouffok 10067 126 Feb 5 18:36 persons-with-id.csv.20240205183603\n", + "-rw-r--r-- 1 mouffok 10067 126 Feb 6 16:09 persons-with-id.csv.20240206160920\n", + "-rw-r--r--@ 1 mouffok 10067 126 Feb 13 14:16 persons-with-id.csv.20240213141617\n", + "-rw-r--r-- 1 mouffok 10067 126 Feb 14 16:14 persons-with-id.csv.20240214161402\n", + "-rw-r--r-- 1 mouffok 10067 126 Feb 15 14:28 persons-with-id.csv.20240215142837\n", "-rw-r--r--@ 1 mouffok 10067 52 Oct 20 10:54 persons.csv\n", "-rw-r--r--@ 1 mouffok 10067 52 Nov 23 15:10 persons.csv.20231123151035\n", "-rw-r--r-- 1 mouffok 10067 52 Nov 23 15:41 persons.csv.20231123154107\n", @@ -4252,6 +4461,13 @@ "-rw-r--r-- 1 mouffok 10067 52 Feb 1 18:40 persons.csv.20240201184048\n", "-rw-r--r-- 1 mouffok 10067 52 Feb 2 10:47 persons.csv.20240202104741\n", "-rw-r--r-- 1 mouffok 10067 52 Feb 2 10:59 persons.csv.20240202105941\n", + "-rw-r--r-- 1 mouffok 10067 52 Feb 2 16:41 persons.csv.20240202164100\n", + "-rw-r--r-- 1 mouffok 10067 52 Feb 5 18:34 persons.csv.20240205183417\n", + "-rw-r--r-- 1 mouffok 10067 52 Feb 5 18:36 persons.csv.20240205183603\n", + "-rw-r--r-- 1 mouffok 10067 52 Feb 6 16:09 persons.csv.20240206160920\n", + "-rw-r--r--@ 1 mouffok 10067 52 Feb 13 14:16 persons.csv.20240213141617\n", + "-rw-r--r-- 1 mouffok 10067 52 Feb 14 16:14 persons.csv.20240214161402\n", + "-rw-r--r-- 1 mouffok 10067 52 Feb 15 14:28 persons.csv.20240215142837\n", "-rw-r--r--@ 1 mouffok 10067 204848 Oct 20 10:54 tfidfvectorizer_model_schemaorg_linking\n", "-rw-r--r-- 1 mouffok 10067 204848 Nov 23 15:41 tfidfvectorizer_model_schemaorg_linking.20231123154107\n", "-rw-r--r--@ 1 mouffok 10067 204848 Nov 27 14:24 tfidfvectorizer_model_schemaorg_linking.20231127142458\n", @@ -4259,7 +4475,13 @@ "-rw-r--r--@ 1 mouffok 10067 204848 Dec 5 15:44 tfidfvectorizer_model_schemaorg_linking.20231205154444\n", "-rw-r--r-- 1 mouffok 10067 204848 Feb 1 18:40 tfidfvectorizer_model_schemaorg_linking.20240201184048\n", "-rw-r--r-- 1 mouffok 10067 204848 Feb 2 10:47 tfidfvectorizer_model_schemaorg_linking.20240202104741\n", - "-rw-r--r-- 1 mouffok 10067 204848 Feb 2 10:59 tfidfvectorizer_model_schemaorg_linking.20240202105941\n" + "-rw-r--r-- 1 mouffok 10067 204848 Feb 2 10:59 tfidfvectorizer_model_schemaorg_linking.20240202105941\n", + "-rw-r--r-- 1 mouffok 10067 204848 Feb 2 16:41 tfidfvectorizer_model_schemaorg_linking.20240202164100\n", + "-rw-r--r-- 1 mouffok 10067 204848 Feb 5 18:36 tfidfvectorizer_model_schemaorg_linking.20240205183603\n", + "-rw-r--r-- 1 mouffok 10067 204848 Feb 6 16:09 tfidfvectorizer_model_schemaorg_linking.20240206160920\n", + "-rw-r--r--@ 1 mouffok 10067 204848 Feb 13 14:16 tfidfvectorizer_model_schemaorg_linking.20240213141617\n", + "-rw-r--r-- 1 mouffok 10067 204848 Feb 14 16:14 tfidfvectorizer_model_schemaorg_linking.20240214161402\n", + "-rw-r--r-- 1 mouffok 10067 204848 Feb 15 14:28 tfidfvectorizer_model_schemaorg_linking.20240215142837\n" ] } ], @@ -4269,7 +4491,7 @@ }, { "cell_type": "code", - "execution_count": 272, + "execution_count": 132, "metadata": {}, "outputs": [], "source": [ @@ -4279,7 +4501,7 @@ ], "metadata": { "kernelspec": { - "display_name": "forge_venv", + "display_name": "forge_venv2", "language": "python", "name": "venv" }, diff --git a/kgforge/core/archetypes/read_only_store.py b/kgforge/core/archetypes/read_only_store.py index ac147d7ac..f18b4320a 100644 --- a/kgforge/core/archetypes/read_only_store.py +++ b/kgforge/core/archetypes/read_only_store.py @@ -249,9 +249,8 @@ def _sparql(self, query: str, view: Optional[str]) -> Optional[Union[List[Resour @abstractmethod def elastic( - self, query: str, debug: bool, limit: int = None, - offset: int = None, **params - ) -> Optional[Union[List[Resource], Resource]]: + self, query: str, debug: bool, limit: int = None, offset: int = None, **params + ) -> Union[List[Resource], Resource, List[Dict], Dict]: ... # Versioning. diff --git a/kgforge/core/archetypes/store.py b/kgforge/core/archetypes/store.py index 473a2fc58..feb479062 100644 --- a/kgforge/core/archetypes/store.py +++ b/kgforge/core/archetypes/store.py @@ -244,7 +244,7 @@ def _deprecate_one(self, resource: Resource) -> None: def elastic( self, query: str, debug: bool, limit: int = DEFAULT_LIMIT, offset: int = DEFAULT_OFFSET, **params - ) -> List[Resource]: + ) -> Union[List[Resource], Resource, List[Dict], Dict]: query_dict = json.loads(query) query_dict = ESQueryBuilder.apply_limit_and_offset_to_query( @@ -256,10 +256,17 @@ def elastic( if debug: ESQueryBuilder.debug_query(query_dict) - return self._elastic(json.dumps(query_dict), view=params.get("view", None)) + return self._elastic( + query_dict, + view=params.get("view", None), + as_resource=params.get("as_resource", True), + build_resource_from=params.get("build_resource_from", "source") + ) @abstractmethod - def _elastic(self, query: str, view: Optional[str]) -> Optional[Union[List[Resource], Resource]]: + def _elastic( + self, query: Dict, view: Optional[str], as_resource: bool, build_resource_from: str + ) -> Optional[Union[List[Resource], Resource, List[Dict], Dict]]: # POLICY Should notify of failures with exception QueryingError including a message. # POLICY Resource _store_metadata should not be set (default is None). # POLICY Resource _synchronized should not be set (default is False). diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index c42228d28..cc914f07a 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -984,7 +984,9 @@ def _sparql(self, query: str, view: str) -> List[Resource]: context = self.model_context() or self.context return SPARQLQueryBuilder.build_resource_from_response(query, data, context) - def _elastic(self, query: str, view: Optional[str]) -> List[Resource]: + def _elastic( + self, query: Dict, view: Optional[str], as_resource: bool, build_resource_from: str + ) -> Optional[Union[List[Resource], Resource, List[Dict], Dict]]: endpoint = self.service.elastic_endpoint["endpoint"] \ if view is None \ @@ -992,16 +994,31 @@ def _elastic(self, query: str, view: Optional[str]) -> List[Resource]: response = requests.post( endpoint, - data=query, + data=json.dumps(query), headers=self.service.headers_elastic, timeout=REQUEST_TIMEOUT ) catch_http_error_nexus(response, QueryingError) results = response.json() + results = results["hits"]["hits"] + + if not as_resource: + return results + + supported_build_arg = {"source": "_source"} + + if build_resource_from not in supported_build_arg.keys(): + raise Exception( + f"Building resources is only supported from the following options:" + f" {supported_build_arg.keys()}" + ) + + key_to_build_from = supported_build_arg[build_resource_from] + return [ self.service.to_resource( - hit["_source"], + hit[key_to_build_from], True, **{ "id": hit.get("_id", None), @@ -1009,9 +1026,8 @@ def _elastic(self, query: str, view: Optional[str]) -> List[Resource]: "_score": hit.get("_score", None), }, ) - for hit in results["hits"]["hits"] + for hit in results ] - # Utils. def _initialize_service( diff --git a/kgforge/specializations/stores/demo_store.py b/kgforge/specializations/stores/demo_store.py index e03005b3c..188f2fad7 100644 --- a/kgforge/specializations/stores/demo_store.py +++ b/kgforge/specializations/stores/demo_store.py @@ -158,10 +158,12 @@ def search( records = self.service.find(conditions) return [_to_resource(x) for x in records] - def _sparql(self, query: str, endpoint: str) -> Optional[Union[List[Resource], Resource]]: + def _sparql(self, query: str, view: str) -> Optional[Union[List[Resource], Resource]]: raise not_supported() - def _elastic(self, query: str, endpoint: str) -> Optional[Union[List[Resource], Resource]]: + def _elastic( + self, query: Dict, view: str, as_resource: bool, build_resource_from: str + ) -> Optional[Union[List[Resource], Resource, List[Dict], Dict]]: raise not_supported() # Utils. From c38b3c4d3559f1c5123c0b40208e4c89bedc7c1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mohameth=20Fran=C3=A7ois=20SY?= Date: Fri, 23 Feb 2024 11:32:49 +0100 Subject: [PATCH 18/49] Set jsonld context version to 1.1 (#387) * Set jsonld context version to 1.1 * this enables non IRI-delimiting character not present in rdflib.plugins.shared.jsonld.context.URI_GEN_DELIMS (e.g '_' in "NCBITaxon": "http://purl.obolibrary.org/obo/NCBITaxon_") to be used when defining jsonld context prefix --- kgforge/core/commons/context.py | 19 +++-- setup.py | 12 +-- tests/conftest.py | 119 +++++++++------------------- tests/core/commons/test_context.py | 15 +++- tests/data/shacl-model/context.json | 5 ++ 5 files changed, 71 insertions(+), 99 deletions(-) diff --git a/kgforge/core/commons/context.py b/kgforge/core/commons/context.py index b9631f6f8..f6d4ee34a 100644 --- a/kgforge/core/commons/context.py +++ b/kgforge/core/commons/context.py @@ -13,7 +13,10 @@ # along with Blue Brain Nexus Forge. If not, see . from typing import Optional, Union, Dict, List -from rdflib.plugins.shared.jsonld.context import source_to_json, Context as JSONLD_Context +from rdflib.plugins.shared.jsonld.context import ( + source_to_json, + Context as JSONLD_Context, +) class Context(JSONLD_Context): @@ -22,7 +25,9 @@ class Context(JSONLD_Context): See also: https://w3c.github.io/json-ld-syntax/#the-context """ - def __init__(self, document: Union[Dict, List, str], iri: Optional[str] = None) -> None: + def __init__( + self, document: Union[Dict, List, str], iri: Optional[str] = None + ) -> None: """Initialize the Context and resolves the document if necessary. The document can be provided as a dictionary, list or string. If a dictionary or list is @@ -35,7 +40,7 @@ def __init__(self, document: Union[Dict, List, str], iri: Optional[str] = None) document (Dict, List, str): resolved or resolvable document iri (str): the iri for the provided document """ - super().__init__(document) + super().__init__(document, version=1.1) if isinstance(document, list): sub_docs = {} for x in document: @@ -48,9 +53,13 @@ def __init__(self, document: Union[Dict, List, str], iri: Optional[str] = None) except Exception as e: raise ValueError("context not resolvable") from e elif isinstance(document, Dict): - self.document = document if "@context" in document else {"@context": document} + self.document = ( + document if "@context" in document else {"@context": document} + ) self.iri = iri - self.prefixes = {v: k for k, v in self._prefixes.items() if k.endswith(("/", "#"))} + self.prefixes = { + v: k for k, v in self._prefixes.items() if k.endswith(("/", "#")) + } def is_http_iri(self): if self.iri: diff --git a/setup.py b/setup.py index 5291e7098..f79e24957 100644 --- a/setup.py +++ b/setup.py @@ -36,9 +36,7 @@ url="https://github.com/BlueBrain/nexus-forge", packages=find_packages(), python_requires=">=3.8", - setup_requires=[ - "setuptools_scm", - ], + setup_requires=["setuptools_scm"], install_requires=[ "hjson", "pyyaml", @@ -55,13 +53,7 @@ "requests==2.31.0", ], extras_require={ - "dev": [ - "tox", - "pytest", - "pytest-bdd==3.4.0", - "pytest-cov", - "pytest-mock", - ], + "dev": ["tox", "pytest", "pytest-bdd==3.4.0", "pytest-cov", "pytest-mock"], "docs": ["sphinx", "sphinx-bluebrain-theme"], "linking_sklearn": ["scikit-learn"], }, diff --git a/tests/conftest.py b/tests/conftest.py index d472e0465..ddc30ec12 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -42,6 +42,7 @@ def do(fun: Callable, data: Union[Resource, List[Resource]], *args) -> None: # Resource(s) creation. + @pytest.fixture def json_one(): return {"id": "123", "type": "Type", "p1": "v1a", "p2": "v2a"} @@ -118,15 +119,9 @@ def fun(x): def check_report(capsys, rc, err, msg, op): out = capsys.readouterr().out[:-1] - heads = { - "": "", - "s": " 2\n", - } + heads = {"": "", "s": " 2\n"} head = heads[rc] - tails = { - None: f"False\n {msg}", - " not": "True", - } + tails = {None: f"False\n {msg}", " not": "True"} tail = tails[err] assert out == f"{head} {op}\n {tail}" @@ -172,12 +167,9 @@ def forge(): "Model": { "name": "DemoModel", "origin": "directory", - "source": full_path_relative_to_root("tests/data/demo-model/") - }, - "Store": { - "name": "DemoStore", - "model": {"name": "DemoModel"} + "source": full_path_relative_to_root("tests/data/demo-model/"), }, + "Store": {"name": "DemoStore", "model": {"name": "DemoModel"}}, } return KnowledgeGraphForge(config) @@ -190,44 +182,29 @@ def custom_context(): "foaf": "http://xmlns.com/foaf/0.1/", "Person": "foaf:Person", "name": "foaf:name", - "skos":"http://www.w3.org/2004/02/skos/core#", - "notation":"skos:notation", - "schema":"http://schema.org/", - "identifier":"schema:identifier", - "isPartOf": { - "@id": "schema:isPartOf", - "@type": "@id" - }, - "prefLabel":"skos:prefLabel", + "skos": "http://www.w3.org/2004/02/skos/core#", + "notation": "skos:notation", + "schema": "http://schema.org/", + "identifier": "schema:identifier", + "isPartOf": {"@id": "schema:isPartOf", "@type": "@id"}, + "prefLabel": "skos:prefLabel", "owl": "http://www.w3.org/2002/07/owl#", - "Class": { - "@id": "owl:Class" - }, + "Class": {"@id": "owl:Class"}, "rdfs": "http://www.w3.org/2000/01/rdf-schema#", - "isDefinedBy": { - "@id": "rdfs:isDefinedBy", - "@type": "@id" - }, - "label": { - "@id": "rdfs:label" - }, - "subClassOf": { - "@id": "rdfs:subClassOf", - "@type": "@id" - }, + "isDefinedBy": {"@id": "rdfs:isDefinedBy", "@type": "@id"}, + "label": {"@id": "rdfs:label"}, + "subClassOf": {"@id": "rdfs:subClassOf", "@type": "@id"}, "delineatedBy": { "@id": "https://bbp.epfl.ch/ontologies/core/bmo/delineatedBy", - "@type": "@id" + "@type": "@id", }, "representedInAnnotation": { "@id": "https://bbp.epfl.ch/ontologies/core/bmo/representedInAnnotation" }, - "atlasRelease": { - "@id": "nsg:atlasRelease" - }, - "mba": "http://api.brain-map.org/api/v2/data/Structure/", + "atlasRelease": {"@id": "nsg:atlasRelease"}, + "mba": "http://api.brain-map.org/api/v2/data/Structure/", "nsg": "https://neuroshapes.org/", - "obo": "http://purl.obolibrary.org/obo/" + "obo": "http://purl.obolibrary.org/obo/", } } @@ -342,8 +319,8 @@ def model_prefixes(): "owl": "http://www.w3.org/2002/07/owl#", "xsd": "http://www.w3.org/2001/XMLSchema#", "foaf": "http://xmlns.com/foaf/0.1/", - "mba": "http://api.brain-map.org/api/v2/data/Structure/", - "obo": "http://purl.obolibrary.org/obo/" + "mba": "http://api.brain-map.org/api/v2/data/Structure/", + "obo": "http://purl.obolibrary.org/obo/", } @@ -359,9 +336,7 @@ def _make_jsonld_expanded(resource, store_metadata, context): else Context(context) ) latitude_term = ctx.terms.get("latitude") - latitude_node = { - "@value": resource.geo["latitude"], - } + latitude_node = {"@value": resource.geo["latitude"]} if latitude_term.type: latitude_node = {**{"@type": latitude_term.type}, **latitude_node} @@ -369,10 +344,10 @@ def _make_jsonld_expanded(resource, store_metadata, context): data.update( { "@type": [ctx.expand(resource.type)], - ctx.expand("description"): [{"@value":resource.description}], + ctx.expand("description"): [{"@value": resource.description}], ctx.expand("geo"): [geo_expanded], ctx.expand("image"): [{"@id": resource.image}], - ctx.expand("name"): [{"@value":resource.name}] + ctx.expand("name"): [{"@value": resource.name}], } ) if store_metadata and resource._store_metadata is not None: @@ -482,23 +457,17 @@ def config(model, store, resolver): { "identifier": "sex", "bucket": "sex.json", - "filters":[ - { - "path": "type", - "value": "class" - }, - { - "path": "label", - "value": "female" - } - ] - }, + "filters": [ + {"path": "type", "value": "class"}, + {"path": "label", "value": "female"}, + ], + } ], "result_resource_mapping": full_path_relative_to_root( "./examples/configurations/demo-resolver/term-to-resource-mapping.hjson" - ) - }, - ], + ), + } + ] }, } @@ -597,11 +566,7 @@ def es_mapping_dict(): "type": "object", }, "layer": { - "properties": { - "label": { - "type": "text", - } - }, + "properties": {"label": {"type": "text"}}, "type": "object", }, }, @@ -640,10 +605,7 @@ def es_mapping_dict(): }, "type": "nested", }, - "a_dense_vector": { - "dims": 3, - "type": "dense_vector", - }, + "a_dense_vector": {"dims": 3, "type": "dense_vector"}, }, "type": "nested", }, @@ -680,13 +642,8 @@ def es_mapping_dict(): "fields": {"keyword": {"type": "keyword"}}, "type": "integer", }, - "a_dense_vector": { - "dims": 3, - "type": "dense_vector", - }, - "a_boolean": { - "type": "boolean", - }, + "a_dense_vector": {"dims": 3, "type": "dense_vector"}, + "a_boolean": {"type": "boolean"}, "objectOfStudy": { "properties": {"label": {"type": "text"}}, "type": "object", @@ -710,9 +667,7 @@ def es_mapping_dict(): "fields": {"keyword": {"type": "keyword"}}, "type": "text", }, - "a_float": { - "type": "float", - }, + "a_float": {"type": "float"}, }, "type": "nested", }, diff --git a/tests/core/commons/test_context.py b/tests/core/commons/test_context.py index 5d5e51716..f1903efd2 100644 --- a/tests/core/commons/test_context.py +++ b/tests/core/commons/test_context.py @@ -16,6 +16,7 @@ import pytest from urllib.error import URLError +from rdflib.plugins.shared.jsonld.context import URI_GEN_DELIMS from kgforge.core.commons.context import Context from kgforge.core.conversions.rdf import _merge_jsonld @@ -66,6 +67,16 @@ def test_load_context_fail(): Context(context_url) +def test_prefix_with_non_URI_GEN_DELIMS_expands(model_context): + context = model_context + assert "_" not in URI_GEN_DELIMS + assert context.version == 1.1 + assert ( + context.resolve("NCBITaxon:10090") + == "http://purl.obolibrary.org/obo/NCBITaxon_10090" + ) + assert context.expand("NCBITaxonPrefixFalse:10090") == "NCBITaxonPrefixFalse:10090" + + def is_valid_document(doc): - return (isinstance(doc, dict) - and "@context" in doc) + return isinstance(doc, dict) and "@context" in doc diff --git a/tests/data/shacl-model/context.json b/tests/data/shacl-model/context.json index 38ff66e51..ba71968be 100644 --- a/tests/data/shacl-model/context.json +++ b/tests/data/shacl-model/context.json @@ -151,6 +151,11 @@ "@id": "prov:wasStartedBy", "@type": "@id" }, + "NCBITaxon": { + "@id": "http://purl.obolibrary.org/obo/NCBITaxon_", + "@prefix": true + }, + "NCBITaxonPrefixFalse": "http://purl.obolibrary.org/obo/NCBITaxon_", "xsd": "http://www.w3.org/2001/XMLSchema#", "foaf": "http://xmlns.com/foaf/0.1/", "mba": "http://api.brain-map.org/api/v2/data/Structure/", From a050dc0a4824852d8a9f8524af2e5a1fdda9a077 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristina=20E=2E=20Gonz=C3=A1lez-Espinoza?= Date: Tue, 5 Mar 2024 15:46:09 +0100 Subject: [PATCH 19/49] Use as default Aggregate SPARQL view (#391) --- examples/notebooks/use-cases/prod-forge-nexus.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/notebooks/use-cases/prod-forge-nexus.yml b/examples/notebooks/use-cases/prod-forge-nexus.yml index 840ac210c..514aaba54 100644 --- a/examples/notebooks/use-cases/prod-forge-nexus.yml +++ b/examples/notebooks/use-cases/prod-forge-nexus.yml @@ -54,7 +54,7 @@ Resolvers: value: Species searchendpoints: sparql: - endpoint: "https://bluebrain.github.io/nexus/vocabulary/defaultSparqlIndex" + endpoint: "https://bbp.epfl.ch/neurosciencegraph/data/views/aggreg-sp/dataset" result_resource_mapping: https://raw.githubusercontent.com/BlueBrain/nexus-forge/master/examples/configurations/nexus-resolver/term-to-resource-mapping.hjson agent: - resolver: AgentResolver From d6f38dedf11b5bff7532aa870064193a2f9542d6 Mon Sep 17 00:00:00 2001 From: Sarah Date: Tue, 5 Mar 2024 17:03:00 +0100 Subject: [PATCH 20/49] reset resolver sparql view to default, change store sparql view to aggregated (#392) --- examples/notebooks/use-cases/prod-forge-nexus.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/notebooks/use-cases/prod-forge-nexus.yml b/examples/notebooks/use-cases/prod-forge-nexus.yml index 514aaba54..02d7c0cc6 100644 --- a/examples/notebooks/use-cases/prod-forge-nexus.yml +++ b/examples/notebooks/use-cases/prod-forge-nexus.yml @@ -13,7 +13,7 @@ Store: name: RdfModel searchendpoints: sparql: - endpoint: "https://bluebrain.github.io/nexus/vocabulary/defaultSparqlIndex" + endpoint: "https://bbp.epfl.ch/neurosciencegraph/data/views/aggreg-sp/dataset" elastic: endpoint: "https://bbp.epfl.ch/neurosciencegraph/data/views/aggreg-es/dataset" mapping: "https://bbp.epfl.ch/neurosciencegraph/data/views/es/dataset" @@ -54,7 +54,7 @@ Resolvers: value: Species searchendpoints: sparql: - endpoint: "https://bbp.epfl.ch/neurosciencegraph/data/views/aggreg-sp/dataset" + endpoint: "https://bluebrain.github.io/nexus/vocabulary/defaultSparqlIndex" result_resource_mapping: https://raw.githubusercontent.com/BlueBrain/nexus-forge/master/examples/configurations/nexus-resolver/term-to-resource-mapping.hjson agent: - resolver: AgentResolver From ede675a31c9d4e9d08ac9184db104f930a00e4aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mohameth=20Fran=C3=A7ois=20SY?= Date: Tue, 2 Apr 2024 16:50:25 +0200 Subject: [PATCH 21/49] Fixes pyshacl deep nodeshape path eval error (#393) Currently the pySHACL throws a ReportableRuntimeError("Evaluation path too deep!\n{}".format(path_str)) exception when evaluating a shape if the length of its transitive closure of the sh:node property is bigger or equal to 30. Give a node shape, this PR addresses this by: * Fixes pyshacl deep nodeshape path eval error by first recursively collecting all the property shapes directly defined (through sh:property) by the node shape or inherited from the node shape parents then link those collected property shapes to the node shape through sh:property and finally remove the node shape <-> parent shape relatioinships * Aligned the expected data model for a shacl shape between the RDF StoreService and DirectoryService: --- kgforge/core/commons/sparql_query_builder.py | 225 ++++++++-- .../models/rdf/directory_service.py | 78 ++-- kgforge/specializations/models/rdf/service.py | 371 ++++++++++++++--- .../models/rdf/store_service.py | 163 ++++---- kgforge/specializations/models/rdf_model.py | 95 +++-- .../specializations/stores/bluebrain_nexus.py | 367 ++++++++++------- .../specializations/stores/sparql_store.py | 97 +++-- setup.py | 12 +- tests/conftest.py | 14 + tests/data/shacl-model/commons/shapes-1.json | 67 +-- tests/data/shacl-model/commons/shapes-2.json | 134 +++--- tests/data/shacl-model/commons/shapes-3.json | 9 +- tests/data/shacl-model/commons/shapes-4.json | 140 +++++++ tests/data/shacl-model/context.json | 3 +- tests/specializations/models/data.py | 208 ++++++---- .../models/test_rdf_directory_service.py | 65 +++ .../specializations/models/test_rdf_model.py | 121 +++--- .../models/test_rdf_service.py | 127 ++++++ .../stores/test_bluebrain_nexus.py | 388 ++++++++++++------ 19 files changed, 1893 insertions(+), 791 deletions(-) create mode 100644 tests/data/shacl-model/commons/shapes-4.json create mode 100644 tests/specializations/models/test_rdf_directory_service.py create mode 100644 tests/specializations/models/test_rdf_service.py diff --git a/kgforge/core/commons/sparql_query_builder.py b/kgforge/core/commons/sparql_query_builder.py index 5c2c859ea..35137f13d 100644 --- a/kgforge/core/commons/sparql_query_builder.py +++ b/kgforge/core/commons/sparql_query_builder.py @@ -39,6 +39,7 @@ class CategoryDataType(Enum): BOOLEAN = "boolean" LITERAL = "literal" + # FIXME: need to find a comprehensive way (different than list) to get all SPARQL reserved clauses @@ -87,7 +88,7 @@ class CategoryDataType(Enum): "order", "minus", "not", - "exists" + "exists", ] type_map = { @@ -103,7 +104,9 @@ class CategoryDataType(Enum): CategoryDataType.DATETIME: lambda x: f'"{x}"^^xsd:dateTime', CategoryDataType.NUMBER: lambda x: x, CategoryDataType.LITERAL: lambda x: f'"{x}"', - CategoryDataType.BOOLEAN: lambda x: "'true'^^xsd:boolean" if x else "'false'^^xsd:boolean", + CategoryDataType.BOOLEAN: lambda x: ( + "'true'^^xsd:boolean" if x else "'false'^^xsd:boolean" + ), } sparql_operator_map = { @@ -120,11 +123,11 @@ class SPARQLQueryBuilder(QueryBuilder): @staticmethod def build( - schema: Optional[Dict], - resolvers: Optional[List[Resolver]], - context: Context, - filters: List[Filter], - **params, + schema: Optional[Dict], + resolvers: Optional[List[Resolver]], + context: Context, + filters: List[Filter], + **params, ) -> Tuple[List, List]: statements = [] @@ -145,12 +148,14 @@ def build( property_path = "/".join(f.path) try: if ( - last_path in ["type", "@type"] - or last_path in ["id", "@id"] - or (last_term is not None and last_term.type == "@id") + last_path in ["type", "@type"] + or last_path in ["id", "@id"] + or (last_term is not None and last_term.type == "@id") ): if f.operator == "__eq__": - statements.append(f"{property_path} {_box_value_as_full_iri(f.value)}") + statements.append( + f"{property_path} {_box_value_as_full_iri(f.value)}" + ) elif f.operator == "__ne__": statements.append(f"{property_path} ?v{index}") sparql_filters.append(f"FILTER(?v{index} != {f.value})") @@ -161,13 +166,18 @@ def build( else: parsed_type, parsed_value = _parse_type(f.value, parse_str=False) value_type = type_map[parsed_type] - value = format_type[value_type](parsed_value if parsed_value else f.value) + value = format_type[value_type]( + parsed_value if parsed_value else f.value + ) if value_type is CategoryDataType.LITERAL: if f.operator not in ["__eq__", "__ne__"]: - raise NotImplementedError("supported operators are '==' and '!=' when filtering with a str.") + raise NotImplementedError( + "supported operators are '==' and '!=' when filtering with a str." + ) statements.append(f"{property_path} ?v{index}") sparql_filters.append( - f"FILTER(?v{index} = {_box_value_as_full_iri(value)})") + f"FILTER(?v{index} = {_box_value_as_full_iri(value)})" + ) else: statements.append(f"{property_path} ?v{index}") sparql_filters.append( @@ -182,20 +192,24 @@ def build( @staticmethod def build_resource_from_response( - query: str, response: Dict, context: Context, *args, **params + query: str, response: Dict, context: Context, *args, **params ) -> List[Resource]: _, q_comp = Query.parseString(query) bindings = response["results"]["bindings"] # FIXME workaround to parse a CONSTRUCT query, this fix depends on # https://github.com/BlueBrain/nexus/issues/1155 if q_comp.name == "ConstructQuery": - return SPARQLQueryBuilder.build_resource_from_construct_query(bindings, context) + return SPARQLQueryBuilder.build_resource_from_construct_query( + bindings, context + ) # SELECT QUERY return SPARQLQueryBuilder.build_resource_from_select_query(bindings) @staticmethod - def build_resource_from_construct_query(results: List, context: Context) -> List[Resource]: + def build_resource_from_construct_query( + results: List, context: Context + ) -> List[Resource]: subject_triples = {} @@ -222,9 +236,7 @@ def triples_to_resource(iri, triples): compacted = jsonld.compact(data_framed, context.document) resource = from_jsonld(compacted) resource.context = ( - context.iri - if context.is_http_iri() - else context.document["@context"] + context.iri if context.is_http_iri() else context.document["@context"] ) return resource @@ -232,18 +244,36 @@ def triples_to_resource(iri, triples): @staticmethod def build_resource_from_select_query(results: List) -> List[Resource]: - return [ - Resource(**{k: _process_types(v) for k, v in x.items()}) - for x in results - ] + + def process_v(v): + if ( + v["type"] == "literal" + and "datatype" in v + and v["datatype"] == "http://www.w3.org/2001/XMLSchema#boolean" + ): + + return json.loads(str(v["value"]).lower()) + + elif ( + v["type"] == "literal" + and "datatype" in v + and v["datatype"] == "http://www.w3.org/2001/XMLSchema#integer" + ): + + return int(v["value"]) + + else: + return v["value"] + + return [Resource(**{k: process_v(v) for k, v in x.items()}) for x in results] @staticmethod def rewrite_sparql( - query: str, - # context: Context, metadata_context: Context, - context_as_dict: Dict, - prefixes: Optional[Dict], - vocab: Optional[str] + query: str, + # context: Context, metadata_context: Context, + context_as_dict: Dict, + prefixes: Optional[Dict], + vocab: Optional[str], ) -> str: """Rewrite local property and type names from Model.template() as IRIs. @@ -257,8 +287,11 @@ def rewrite_sparql( has_vocab = vocab is not None if context_as_dict.get("type") == "@type": - context_as_dict["type"] = "rdf:type" if "rdf" in prefixes \ + context_as_dict["type"] = ( + "rdf:type" + if "rdf" in prefixes else "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" + ) def replace(match: Match) -> str: m4 = match.group(4) @@ -267,7 +300,8 @@ def replace(match: Match) -> str: else: v = ( context_as_dict.get(m4, ":" + m4 if has_vocab else None) - if str(m4).lower() not in SPARQL_CLAUSES and not str(m4).startswith("https") + if str(m4).lower() not in SPARQL_CLAUSES + and not str(m4).startswith("https") else m4 ) if v is None: @@ -301,18 +335,21 @@ def replace(match: Match) -> str: @staticmethod def _replace_in_sparql( - qr: str, - what: str, - value: Optional[int], - default_value: int, - search_regex: Pattern, - replace_if_in_query=True + qr: str, + what: str, + value: Optional[int], + default_value: int, + search_regex: Pattern, + replace_if_in_query=True, ) -> str: is_what_in_query = bool(re.search(pattern=search_regex, string=qr)) - replace_value = f" {what} {value}" if value else \ - (f" {what} {default_value}" if default_value else None) + replace_value = ( + f" {what} {value}" + if value + else (f" {what} {default_value}" if default_value else None) + ) if is_what_in_query: if not replace_if_in_query and value: @@ -330,20 +367,120 @@ def _replace_in_sparql( return qr @staticmethod - def apply_limit_and_offset_to_query(query, limit, default_limit, offset, default_offset): + def apply_limit_and_offset_to_query( + query, limit, default_limit, offset, default_offset + ): if limit: query = SPARQLQueryBuilder._replace_in_sparql( - query, "LIMIT", limit, default_limit, - re.compile(r" LIMIT \d+", flags=re.IGNORECASE) + query, + "LIMIT", + limit, + default_limit, + re.compile(r" LIMIT \d+", flags=re.IGNORECASE), ) if offset: query = SPARQLQueryBuilder._replace_in_sparql( - query, "OFFSET", offset, default_offset, - re.compile(r" OFFSET \d+", flags=re.IGNORECASE) + query, + "OFFSET", + offset, + default_offset, + re.compile(r" OFFSET \d+", flags=re.IGNORECASE), ) return query + @staticmethod + def create_select_query( + vars_: List[str], + statements: Union[str, List[str]], + distinct: bool, + search_in_graph: bool, + union: bool = False, + ): + if not union: + all_statements = ( + ". ".join(statements) if isinstance(statements, list) else statements + ) + + elif not isinstance(statements, list): + raise AttributeError( + f"Expected statements argument to be of type List[str] when union is True. Each item will go in a UNION clause: {statements}" + ) + else: + all_statements = "}} UNION {{".join(statements) + all_statements = "{{" + all_statements + "}}" + + where_clauses = ( + f"{{ Graph ?g {{{all_statements}}}}}" + if search_in_graph + else f"{{{all_statements}}}" + ) + + join_vars_ = " ".join(vars_) + select_vars = f"DISTINCT {join_vars_}" if distinct else f"{join_vars_}" + return f"SELECT {select_vars} WHERE {where_clauses}" + def _box_value_as_full_iri(value): return f"<{value}>" if is_valid_url(value) else value + + +def build_shacl_query( + statements: List[str] = None, + defining_property_uri: str = None, + deprecated_property_uri: str = None, + deprecated: bool = False, + deprecated_optional: bool = False, + search_in_graph: bool = False, + context: Context = None, +) -> str: + deprecated_statement = ( + f"?resource_id <{deprecated_property_uri}> '{str(deprecated).lower()}'^^xsd:boolean" + if deprecated_property_uri + else "" + ) + defining_statement = ( + f"?resource_id <{defining_property_uri}> ?shape" + if defining_property_uri + else "" + ) + if deprecated_optional and deprecated_property_uri: + deprecated_statement = " OPTIONAL {" + deprecated_statement + "}" + shape_target_statement = "?shape sh:targetClass ?type" + extra_statements = [defining_statement, deprecated_statement] + if statements: + extra_statements.extend(statements) + shape_target_statement_str = ".".join([shape_target_statement] + extra_statements) + shape_node_statements_str = ( + "SELECT (?shape as ?type) ?shape ?resource_id WHERE { ?shape a sh:NodeShape ." + + "?shape a rdfs:Class . {}".format(".".join(extra_statements) + "}") + ) + shape_node_not_targeting_statements_str = ( + "SELECT ?shape ?resource_id WHERE { ?shape a sh:NodeShape ." + + "FILTER NOT EXISTS {?shape sh:targetClass []} FILTER NOT EXISTS {?shape a rdfs:Class}" + + " . {}".format(".".join(extra_statements) + "}") + ) + all_statements = [ + shape_target_statement_str, + shape_node_statements_str, + shape_node_not_targeting_statements_str, + ] + vars_ = ["?type", "?shape", "?resource_id"] + if search_in_graph: + vars_.append("?g") + shacl_query = SPARQLQueryBuilder.create_select_query( + vars_=vars_, + statements=all_statements, + distinct=True, + search_in_graph=search_in_graph, + union=True, + ) + if not context: + return shacl_query + else: + return SPARQLQueryBuilder.rewrite_sparql( + shacl_query, + context_as_dict=context.document, + prefixes=context.prefixes, + vocab=context.vocab, + ) diff --git a/kgforge/specializations/models/rdf/directory_service.py b/kgforge/specializations/models/rdf/directory_service.py index 4452f24ac..2756c1493 100644 --- a/kgforge/specializations/models/rdf/directory_service.py +++ b/kgforge/specializations/models/rdf/directory_service.py @@ -15,11 +15,14 @@ from pathlib import Path from typing import Dict, Tuple -from pyshacl import validate -from rdflib import Graph, URIRef +from pyshacl import Shape, validate +from rdflib import Dataset as RDFDataset +from rdflib import OWL, Graph, URIRef + from rdflib.util import guess_format from kgforge.core.commons.context import Context +from kgforge.core.commons.sparql_query_builder import build_shacl_query from kgforge.specializations.models.rdf.node_properties import NodeProperties from kgforge.specializations.models.rdf.service import RdfService, ShapesGraphWrapper @@ -27,13 +30,11 @@ class DirectoryService(RdfService): def __init__(self, dirpath: Path, context_iri: str) -> None: - self._graph = load_rdf_files(dirpath) - self._sg = ShapesGraphWrapper(self._graph) - super().__init__(self._graph, context_iri) + dataset_graph = _load_rdf_files_as_graph(dirpath) + super().__init__(dataset_graph, context_iri) - def schema_source_id(self, schema_iri: str) -> str: - # FIXME should return the file path where the schema is in - return schema_iri + def schema_source_id(self, shape_uri: str) -> str: + return str(self._get_named_graph_from_shape(URIRef(shape_uri))) def materialize(self, iri: URIRef) -> NodeProperties: sh = self._sg.lookup_shape_from_node(iri) @@ -43,8 +44,10 @@ def materialize(self, iri: URIRef) -> NodeProperties: attrs["properties"] = props return NodeProperties(**attrs) - def _validate(self, iri: str, data_graph: Graph) -> Tuple[bool, Graph, str]: - return validate(data_graph, shacl_graph=self._graph) + def _validate( + self, iri: str, data_graph: Graph, shape: Shape, shacl_graph: Graph + ) -> Tuple[bool, Graph, str]: + return validate(data_graph, shacl_graph=shacl_graph) def resolve_context(self, iri: str) -> Dict: if iri in self._context_cache: @@ -61,30 +64,43 @@ def resolve_context(self, iri: str) -> Dict: def generate_context(self) -> Dict: return self._generate_context() - def _build_shapes_map(self) -> Dict: - query = """ - PREFIX rdfs: - PREFIX sh: - SELECT ?type ?shape WHERE { - { ?shape sh:targetClass ?type .} - UNION { - SELECT (?shape as ?type) ?shape WHERE { - ?shape a sh:NodeShape . - ?shape a rdfs:Class - } - } - } ORDER BY ?type""" - res = self._graph.query(query) - return {row["type"]: row["shape"] for row in res} - - -def load_rdf_files(path: Path) -> Graph: - memory_graph = Graph() + def _build_shapes_map(self) -> Tuple[Dict, Dict, Dict]: + query = build_shacl_query( + defining_property_uri=self.NXV.shapes, + deprecated_property_uri=OWL.deprecated, + deprecated_optional=True, + search_in_graph=True, + context=self.context, + ) + res = self._dataset_graph.query(query) + class_to_shape = {} + shape_to_defining_resource = {} + defining_resource_to_named_graph = {} + for row in res: + shape_uriref = URIRef(self.context.expand(row["shape"])) + resource_uriref = URIRef(self.context.expand(row["resource_id"])) + if row["type"]: + class_to_shape[URIRef(self.context.expand(row["type"]))] = shape_uriref + shape_to_defining_resource[shape_uriref] = resource_uriref + defining_resource_to_named_graph[resource_uriref] = URIRef(row["g"]) + return ( + class_to_shape, + shape_to_defining_resource, + defining_resource_to_named_graph, + ) + + def load_shape_graph_from_source(self, graph_id: str, schema_id: str) -> Graph: + return self._dataset_graph.graph(URIRef(graph_id)) + + +def _load_rdf_files_as_graph(path: Path) -> RDFDataset: + schema_graphs = RDFDataset() extensions = [".ttl", ".n3", ".json", ".rdf"] for f in path.rglob(os.path.join("*.*")): if f.suffix in extensions: file_format = guess_format(f.name) if file_format is None: file_format = "json-ld" - memory_graph.parse(f.as_posix(), format=file_format) - return memory_graph + schema_graph = schema_graphs.graph(URIRef(f.as_posix())) + schema_graph.parse(f.as_posix(), format=file_format) + return schema_graphs diff --git a/kgforge/specializations/models/rdf/service.py b/kgforge/specializations/models/rdf/service.py index 95ccec498..779f2325f 100644 --- a/kgforge/specializations/models/rdf/service.py +++ b/kgforge/specializations/models/rdf/service.py @@ -17,18 +17,29 @@ from pyshacl.constraints import ALL_CONSTRAINT_PARAMETERS from pyshacl.shape import Shape from pyshacl.shapes_graph import ShapesGraph -from rdflib import Graph, URIRef, RDF, XSD +from rdflib import OWL, SH, Graph, Namespace, URIRef, RDF, XSD +from rdflib.paths import ZeroOrMore +from rdflib import Dataset as RDFDataset +from rdflib.collection import Collection as RDFCollection +from rdflib.exceptions import ParserError from kgforge.core.resource import Resource from kgforge.core.commons.context import Context from kgforge.core.commons.exceptions import ConfigurationError from kgforge.core.conversions.rdf import as_graph -from kgforge.specializations.models.rdf.collectors import (AndCollector, NodeCollector, - PropertyCollector, MinCountCollector, - DatatypeCollector, InCollector, - ClassCollector, NodeKindCollector, - OrCollector, XoneCollector, - HasValueCollector) +from kgforge.specializations.models.rdf.collectors import ( + AndCollector, + NodeCollector, + PropertyCollector, + MinCountCollector, + DatatypeCollector, + InCollector, + ClassCollector, + NodeKindCollector, + OrCollector, + XoneCollector, + HasValueCollector, +) from kgforge.specializations.models.rdf.node_properties import NodeProperties from kgforge.specializations.models.rdf.utils import as_term @@ -44,13 +55,13 @@ ClassCollector, NodeKindCollector, XoneCollector, - HasValueCollector + HasValueCollector, ] ALL_COLLECTORS_MAP = {c.constraint(): c for c in ALL_COLLECTORS} def traverse(self, predecessors: Set[URIRef]) -> Tuple[List, Dict]: - """ traverses the Shape SACL properties to collect constrained properties + """traverses the Shape SACL properties to collect constrained properties This function is injected to pyshacl Shape object in order to traverse the Shacl graph. It will call a specific collector depending on the SHACL property present in the NodeShape @@ -91,25 +102,28 @@ def traverse(self, predecessors: Set[URIRef]) -> Tuple[List, Dict]: class ShapeWrapper(Shape): - __slots__ = ('__dict__',) + __slots__ = ("__dict__",) def __init__(self, shape: Shape) -> None: super().__init__(shape.sg, shape.node, shape._p, shape._path, shape.logger) def parameters(self): - return (p for p, v in self.sg.predicate_objects(self.node) - if p in ALL_CONSTRAINT_PARAMETERS) + return ( + p + for p, v in self.sg.predicate_objects(self.node) + if p in ALL_CONSTRAINT_PARAMETERS + ) class ShapesGraphWrapper(ShapesGraph): - def __init__(self, graph: Graph) -> None: + def __init__(self, graph: RDFDataset) -> None: super().__init__(graph) # the following line triggers the shape loading self._shapes = self.shapes def lookup_shape_from_node(self, node: URIRef) -> Shape: - """ Overwrite function to inject the transverse function for only to requested nodes. + """Overwrite function to inject the transverse function for only to requested nodes. Args: node (URIRef): The node to look up. @@ -117,7 +131,10 @@ def lookup_shape_from_node(self, node: URIRef) -> Shape: Returns: Shape: The Shacl shape of the requested node. """ - shape = self._node_shape_cache[node] + try: + shape = self._node_shape_cache[node] + except KeyError as ke: + raise ValueError(f"Unknown shape node id '{node}': {str(ke)}") from ke if shape: shape_wrapper = ShapeWrapper(self._node_shape_cache[node]) if not hasattr(shape_wrapper, "traverse"): @@ -128,18 +145,34 @@ def lookup_shape_from_node(self, node: URIRef) -> Shape: class RdfService: - def __init__(self, graph: Graph, context_iri: Optional[str] = None) -> None: + def __init__(self, graph: RDFDataset, context_iri: Optional[str] = None) -> None: if context_iri is None: raise ConfigurationError("RdfModel requires a context") - self._graph = graph + self._dataset_graph = graph + self._sg = None + self._init_shape_graph_wrapper() + self.NXV = Namespace("https://bluebrain.github.io/nexus/vocabulary/") self._context_cache = {} - self.classes_to_shapes = self._build_shapes_map() resolved_context = self.resolve_context(context_iri) self.context = Context(resolved_context, context_iri) - self.types_to_shapes: Dict = self._build_types_to_shapes() + ( + self.class_to_shape, + self.shape_to_defining_resource, + self.defining_resource_to_named_graph, + ) = self._build_shapes_map() + self._imported = [] + + @abstractmethod + def schema_source_id(self, shape_uri: str) -> str: + """Id of the source from which the shape is accessible (e.g. bucket, file path, ...) + + Args: + shape_uri: the URI of a node shape - def schema_source_id(self, schema_iri: str) -> str: + Returns: + The id of the source from which the shape is accessible + """ # POLICY Should return the id of the resource containing the schema raise NotImplementedError() @@ -157,23 +190,29 @@ def materialize(self, iri: URIRef) -> NodeProperties: def validate(self, resource: Resource, type_: str): try: - if isinstance(resource.type, list) and type_ is None: + if not resource.get_type() and not type_: + raise ValueError( + "No type was provided through Resource.type or the type_ parameter" + ) + if isinstance(resource.get_type(), list) and type_ is None: raise ValueError( "Resource has list of types as attribute and type_ parameter is not specified. " - "Please provide a type_ parameter to validate against it." + "Provide a single value for the type_ parameter or for Resource.type" ) - if type_ is None: - shape_iri = self.types_to_shapes[resource.type] - else: - shape_iri = self.types_to_shapes[type_] - except AttributeError as exc: - raise TypeError("Resource requires a type attribute") from exc - + type_to_validate = type_ if type_ else resource.get_type() + except ValueError as exc: + raise TypeError( + f"A single type should be provided for validation: {str(exc)}" + ) from exc + shape_iri = self.get_shape_uriref_from_class_fragment(type_to_validate) data_graph = as_graph(resource, False, self.context, None, None) - return self._validate(shape_iri, data_graph) + shape, shacl_graph = self.get_shape_graph(shape_iri) + return self._validate(shape_iri, data_graph, shape, shacl_graph) @abstractmethod - def _validate(self, iri: str, data_graph: Graph) -> Tuple[bool, Graph, str]: + def _validate( + self, iri: str, data_graph: Graph, shape: Shape, shacl_graph: Graph + ) -> Tuple[bool, Graph, str]: raise NotImplementedError() @abstractmethod @@ -187,23 +226,49 @@ def generate_context(self) -> Dict: raise NotImplementedError() @abstractmethod - def _build_shapes_map(self) -> Dict: - """Queries the source and returns a map of owl:Class to sh:NodeShape""" + def _build_shapes_map(self) -> Tuple[Dict, Dict, Dict]: + """Index the loaded node shapes + Returns: + * a Dict of a targeted owl:Class to a shape + * a Dict of a shape to the resource defining it through + * a Dict of a resource defining a shape to the a named graph containing it + """ raise NotImplementedError() - def _build_types_to_shapes(self): - """Iterates the classes_to_shapes dictionary to create a term to shape dictionary filtering - the terms available in the context """ - types_to_shapes: Dict = {} - for k, v in self.classes_to_shapes.items(): - term = self.context.find_term(str(k)) - if term: - key = term.name - if term.name not in types_to_shapes: - types_to_shapes[term.name] = v - else: - print("WARN: duplicated term", key, k, [key], v) - return types_to_shapes + @abstractmethod + def load_shape_graph_from_source(self, graph_id: str, schema_id: str) -> Graph: + """Loads into graph_id the node shapes defined in shema_id from the source + + Args: + graph_id: A named graph uri from which the shapes are accessible + schema_id: the resource defining the node shapes through + + Returns: + An rdflib.Graph() with node shapes defined by schema_id + """ + raise NotImplementedError() + + def schema_id(self, shape_uri: str) -> str: + """Id of the schema resource defining the node shape + + Args: + shape_uri: the URI of a node shape + + Returns: + The Id of the schema resource defining the node shape + """ + return str(self.shape_to_defining_resource[URIRef(shape_uri)]) + + def _init_shape_graph_wrapper(self): + self._sg = ShapesGraphWrapper(self._dataset_graph) + + def get_shape_graph_wrapper(self): + return self._sg + + def _get_named_graph_from_shape(self, shape_uriref: URIRef): + return self.defining_resource_to_named_graph[ + self.shape_to_defining_resource[shape_uriref] + ] def _generate_context(self) -> Dict: """Materializes all Types into templates and parses the templates to generate a context""" @@ -220,13 +285,18 @@ def traverse_properties(properties) -> Tuple[Dict, Dict]: for property_ in properties: if hasattr(property_, "path"): if property_.path != RDF.type and str(property_.path) != "id": - v_prefix, v_namespace, v_name = self._graph.compute_qname(property_.path) + v_prefix, v_namespace, v_name = ( + self._dataset_graph.compute_qname(property_.path) + ) l_prefixes.update({v_prefix: str(v_namespace)}) term_obj = {"@id": ":".join((v_prefix, v_name))} if hasattr(property_, "id"): term_obj.update({"@type": "@id"}) if hasattr(property_, "values"): - if isinstance(property_.values, str) or len(property_.values) == 1: + if ( + isinstance(property_.values, str) + or len(property_.values) == 1 + ): if isinstance(property_.values, list): obj_type = property_.values[0] else: @@ -235,10 +305,14 @@ def traverse_properties(properties) -> Tuple[Dict, Dict]: term_obj.update({"@type": "@id"}) else: try: - px, ns, n = self._graph.compute_qname(obj_type) + px, ns, n = self._dataset_graph.compute_qname( + obj_type + ) l_prefixes.update({px: str(ns)}) if str(ns) == str(XSD): - term_obj.update({"@type": ":".join((px, n))}) + term_obj.update( + {"@type": ":".join((px, n))} + ) except Exception: pass l_terms.update({v_name: term_obj}) @@ -249,7 +323,7 @@ def traverse_properties(properties) -> Tuple[Dict, Dict]: return l_prefixes, l_terms target_classes = [] - for k in self.classes_to_shapes.keys(): + for k in self.class_to_shape.keys(): key = as_term(k) if key not in target_classes: target_classes.append(key) @@ -257,8 +331,8 @@ def traverse_properties(properties) -> Tuple[Dict, Dict]: # TODO: should this raise an error? print("duplicated term", key, k) - for type_, shape in self.classes_to_shapes.items(): - t_prefix, t_namespace, t_name = self._graph.compute_qname(type_) + for type_, shape in self.class_to_shape.items(): + t_prefix, t_namespace, t_name = self._dataset_graph.compute_qname(type_) prefixes.update({t_prefix: str(t_namespace)}) types_.update({t_name: {"@id": ":".join((t_prefix, t_name))}}) node = self.materialize(shape) @@ -272,3 +346,194 @@ def traverse_properties(properties) -> Tuple[Dict, Dict]: context.update({key: terms[key] for key in sorted(terms)}) return {"@context": context} if len(context) > 0 else None + + def _transitive_load_shape_graph(self, graph_uriref: URIRef, schema_uriref: URIRef): + """Loads into the graph identified by graph_uriref: + * the node shapes defined in the schema identified by schema_uriref + * the transitive closure of the owl.imports property of the schema schema_uriref + + Loaded schemas are added to self._imported to avoid loading them a second time. + + Args: + node_shape_uriref: the URI of a node shape + graph_uriref: A named graph URIRef containing schema_uriref + schema_uriref: A URIRef of the schema + import_transitive_closure: Whether (True) to add node_shape_uriref's owl:import transitive closure in node_shape_uriref's graph or not (False) + link_property_shapes_from_ancestors: Whether (True) to directly link to node_shape_uriref recursively collected property shapes of its ancestors or not (False) + """ + schema_graph = self.load_shape_graph_from_source(graph_uriref, schema_uriref) + # if import_transitive_closure: + for imported in schema_graph.objects(schema_uriref, OWL.imports): + imported_schema_uriref = URIRef(self.context.expand(imported)) + try: + imported_graph_id = self.defining_resource_to_named_graph[ + imported_schema_uriref + ] + if imported_schema_uriref not in self._imported: + imported_schema_graph = self._transitive_load_shape_graph( + imported_graph_id, imported_schema_uriref + ) + else: + imported_schema_graph = self._dataset_graph.graph(imported_graph_id) + # set operation to keep blank nodes unchanged as all the graphs belong to the same overall RDF Dataset + # seeAlso: https://rdflib.readthedocs.io/en/stable/merging.html + schema_graph += imported_schema_graph + except KeyError as ke: + raise ValueError( + f"Imported schema {imported_schema_uriref} is not loaded and indexed: {str(ke)}" + ) from ke + except ParserError as pe: + raise ValueError( + f"Failed to parse the rdf graph of the imported schema {imported_schema_uriref}: {str(pe)}" + ) from pe + self._imported.append(schema_uriref) + return schema_graph + + def _get_transitive_property_shapes_from_nodeshape( + self, node_shape_uriref: URIRef, schema_graph: Graph + ) -> Tuple[List, List, List, List]: + """ + Recursively collect all the property shapes defined (through sh:property) by node_shape_uriref and by the node shapes + it extends through (and|or|xone)*/SH.node. In order to properly replace in schema_graph + the (node_shape_uriref, SH.node, parent_node_shape_uriref) triples with (node_shape_uriref, SH.property, property_shape_uriref) + for each collected property shape, are also collected: + + * (node_shape_uriref, SH.property, property_shape_uriref) triples to add to schema_graph + * (node_shape_uriref, SH.node, parent_node_shape_uriref) triples to remove from schema_graph + * RDF collection c such as (node_shape_uriref, c/SH.node, parent_node_shape_uriref) and index of items to remove from them + + Args: + node_shape_uriref: the URI of a node shape + schema_graph: An rdflib.Graph containing the definition of node_shape_uriref + Returns: + A Tuple of 3 lists: + * the triples to add to schema_graph + * collected property shapes (SH.property, property_shape_uriref) + * the triples to remove from schema_graph + * RDF Collections and index of items to remove from them + """ + node_transitive_property_shapes = [] + triples_to_add = [] + triples_to_remove = [] + rdfcollection_items_to_remove = [] + sh_nodes, sh_properties = self.get_nodeshape_parent_propertyshape( + self._dataset_graph, node_shape_uriref + ) + for sh_node in set(sh_nodes): + if str(sh_node) != str(node_shape_uriref) and str(sh_node) != str(RDF.nil): + t_a, p_a, t_r, c_r = ( + self._get_transitive_property_shapes_from_nodeshape( + sh_node, schema_graph + ) + ) + if p_a: + triples_to_add.extend(t_a) + rdfcollection_items_to_remove.extend(c_r) + for propertyShape in p_a: + triples_to_add.append( + (node_shape_uriref, propertyShape[0], propertyShape[1]) + ) + node_transitive_property_shapes.append(propertyShape) + triples_to_remove.extend(t_r) + triples_to_remove.append((node_shape_uriref, SH.node, sh_node)) + for t in schema_graph.subjects(SH.node, sh_node): + for list_, first, o, g in self._dataset_graph.quads( + ( + None, + URIRef( + "http://www.w3.org/1999/02/22-rdf-syntax-ns#first" + ), + t, + None, + ) + ): + if g == self._get_named_graph_from_shape(node_shape_uriref): + list_collection = RDFCollection(schema_graph, list_) + t_index = list_collection.index(t) + # del list_collection[t_index] + rdfcollection_items_to_remove.append( + (list_collection, t_index) + ) + for sh_node_property in set(sh_properties): + if str(sh_node_property) != str(node_shape_uriref) and str( + sh_node_property + ) != str(RDF.nil): + node_transitive_property_shapes.append((SH.property, sh_node_property)) + return ( + triples_to_add, + node_transitive_property_shapes, + triples_to_remove, + rdfcollection_items_to_remove, + ) + + def get_nodeshape_parent_propertyshape(self, graph, node_shape_uriref): + schema_defines_shape = [ + SH["and"] / (RDF.first | RDF.rest / RDF.first) * ZeroOrMore, + SH["or"] / (RDF.first | RDF.rest / RDF.first) * ZeroOrMore, + SH["xone"] / (RDF.first | RDF.rest / RDF.first) * ZeroOrMore, + ] + sh_properties = list(graph.objects(node_shape_uriref, SH.property)) + sh_nodes = list(graph.objects(node_shape_uriref, SH.node)) + for s in schema_defines_shape: + sh_nodes.extend(list(graph.objects(node_shape_uriref, s / SH.node))) + sh_properties.extend( + list(graph.objects(node_shape_uriref, s / SH.property)) + ) + return sh_nodes, sh_properties + + def get_shape_graph(self, node_shape_uriref: URIRef) -> Tuple[Shape, Graph]: + try: + shape = self.get_shape_graph_wrapper().lookup_shape_from_node( + node_shape_uriref + ) + if ( + node_shape_uriref in self.shape_to_defining_resource + and self.shape_to_defining_resource[node_shape_uriref] in self._imported + ): + shape_graph = self._dataset_graph.graph( + self._get_named_graph_from_shape(node_shape_uriref) + ) + else: + raise ValueError() + except Exception: + try: + shape_graph = self._transitive_load_shape_graph( + self._get_named_graph_from_shape(node_shape_uriref), + self.shape_to_defining_resource[node_shape_uriref], + ) + # Address (though not for all node shape inheritance cases) limitation of the length + # of sh:node transitive path (https://github.com/RDFLib/pySHACL/blob/master/pyshacl/shape.py#L468). + ( + triples_to_add, + _, + triples_to_remove, + rdfcollection_items_to_remove, + ) = self._get_transitive_property_shapes_from_nodeshape( + node_shape_uriref, shape_graph + ) + for triple_to_add in triples_to_add: + shape_graph.add(triple_to_add) + for triple_to_remove in triples_to_remove: + shape_graph.remove(triple_to_remove) + for ( + rdfcollection, + rdfcollection_item_index, + ) in rdfcollection_items_to_remove: + del rdfcollection[rdfcollection_item_index] + # reloads the shapes graph + self._init_shape_graph_wrapper() + shape = self.get_shape_graph_wrapper().lookup_shape_from_node( + node_shape_uriref + ) + except Exception as e: + raise Exception( + f"Failed to get the shape '{node_shape_uriref}': {str(e)}" + ) from e + return shape, shape_graph + + def get_shape_uriref_from_class_fragment(self, fragment): + try: + type_expanded_cls = self.context.expand(fragment) + return self.class_to_shape[URIRef(type_expanded_cls)] + except Exception as ke: + raise TypeError(f"Unknown type '{fragment}': {ke}") from ke diff --git a/kgforge/specializations/models/rdf/store_service.py b/kgforge/specializations/models/rdf/store_service.py index 86a6446cc..1764b2621 100644 --- a/kgforge/specializations/models/rdf/store_service.py +++ b/kgforge/specializations/models/rdf/store_service.py @@ -15,50 +15,53 @@ import json -from pyshacl import validate +from pyshacl import Shape, validate from rdflib import URIRef, Namespace, Graph +from rdflib import Dataset as RDFDataset from kgforge.core.commons.exceptions import RetrievalError +from kgforge.core.commons.sparql_query_builder import build_shacl_query from kgforge.core.conversions.rdf import as_jsonld from kgforge.core.archetypes.store import Store from kgforge.specializations.models.rdf.node_properties import NodeProperties -from kgforge.specializations.models.rdf.service import RdfService, ShapesGraphWrapper +from kgforge.specializations.models.rdf.service import RdfService from kgforge.specializations.stores.nexus import Service class StoreService(RdfService): - def __init__(self, default_store: Store, context_iri: Optional[str] = None, - context_store: Optional[Store] = None) -> None: + def __init__( + self, + default_store: Store, + context_iri: Optional[str] = None, + context_store: Optional[Store] = None, + ) -> None: self.default_store = default_store self.context_store = context_store or default_store # FIXME: define a store independent strategy - self.NXV = Namespace(self.default_store.service.namespace) if hasattr(self.default_store.service, "namespace") \ - else Namespace(Service.NEXUS_NAMESPACE_FALLBACK) - self.store_metadata_iri = self.default_store.service.store_context if hasattr(self.default_store.service, "store_context") \ + self.store_metadata_iri = ( + self.default_store.service.store_context + if hasattr(self.default_store.service, "store_context") else Namespace(Service.NEXUS_CONTEXT_FALLBACK) - self._shapes_to_resources: Dict - self._imported = [] - self._graph = Graph() - self._sg = ShapesGraphWrapper(self._graph) - super().__init__(self._graph, context_iri) + ) + super().__init__(RDFDataset(), context_iri) - def schema_source_id(self, schema_iri: str) -> str: - return self._shapes_to_resources[schema_iri] + def schema_source_id(self, shape_uri: str) -> str: + return str(self.shape_to_defining_resource[URIRef(shape_uri)]) def materialize(self, iri: URIRef) -> NodeProperties: - shape = self._type_shape(iri) + shape = self.get_shape_graph(iri) predecessors = set() props, attrs = shape.traverse(predecessors) if props: attrs["properties"] = props return NodeProperties(**attrs) - def _validate(self, iri: str, data_graph: Graph) -> Tuple[bool, Graph, str]: - # _type_shape will make sure all the shapes for this type are in the graph - self._type_shape(iri) - return validate(data_graph, shacl_graph=self._graph) + def _validate( + self, iri: str, data_graph: Graph, shape: Shape, shacl_graph: Graph + ) -> Tuple[bool, Graph, str]: + return validate(data_graph, shacl_graph=shacl_graph) def resolve_context(self, iri: str) -> Dict: if iri in self._context_cache: @@ -68,61 +71,74 @@ def resolve_context(self, iri: str) -> Dict: return document def generate_context(self) -> Dict: - for v in self._shapes_to_resources.values(): - self._load_shape(v) + for shape_uriref, schema_uriref in self.shape_to_defining_resource.items(): + if schema_uriref not in self._imported: + self._transitive_load_shape_graph( + self._get_named_graph_from_shape(shape_uriref), schema_uriref + ) # reloads the shapes graph - self._sg = ShapesGraphWrapper(self._graph) + self._init_shape_graph_wrapper() return self._generate_context() - def _build_shapes_map(self) -> Dict: - query = f""" - PREFIX rdfs: - PREFIX sh: - SELECT ?type ?shape ?resource_id WHERE {{ - {{ ?shape sh:targetClass ?type . - ?resource_id <{self.NXV.shapes}> ?shape - }} UNION {{ - SELECT (?shape as ?type) ?shape ?resource_id WHERE {{ - ?shape a sh:NodeShape . - ?shape a rdfs:Class . - ?resource_id <{self.NXV.shapes}> ?shape - }} - }} - }} ORDER BY ?type""" - # make sure to get all types - limit = 100 + def _build_shapes_map(self) -> Tuple[Dict, Dict, Dict]: + query = build_shacl_query( + defining_property_uri=self.NXV.shapes, + deprecated_property_uri=self.NXV.deprecated, + context=self.context, + ) + # consider taking this from the forge config + limit = 1000 offset = 0 count = limit - class_to_shapes = {} - shape_resource = {} + class_to_shape = {} + shape_to_defining_resource = {} + defining_resource_to_named_graph = {} while count == limit: - resources = self.context_store.sparql(query, debug=False, limit=limit, offset=offset) + resources = self.context_store.sparql( + query, debug=False, limit=limit, offset=offset + ) for r in resources: - shape_uri = URIRef(r.shape) - class_to_shapes[r.type] = shape_uri - shape_resource[shape_uri] = URIRef(r.resource_id) + + shape_uriref = URIRef(self.context.expand(r.shape)) + if r.has_type(): + class_to_shape[URIRef(self.context.expand(r.get_type()))] = ( + shape_uriref + ) + shape_to_defining_resource[shape_uriref] = URIRef(r.resource_id) + defining_resource_to_named_graph[URIRef(r.resource_id)] = URIRef( + r.resource_id + "/graph" + ) count = len(resources) offset += limit - self._shapes_to_resources = shape_resource - return class_to_shapes + return ( + class_to_shape, + shape_to_defining_resource, + defining_resource_to_named_graph, + ) def recursive_resolve(self, context: Union[Dict, List, str]) -> Dict: document = {} if isinstance(context, list): if self.store_metadata_iri in context: context.remove(self.store_metadata_iri) - if hasattr(self.default_store.service, "store_local_context") and\ - self.default_store.service.store_local_context in context: + if ( + hasattr(self.default_store.service, "store_local_context") + and self.default_store.service.store_local_context in context + ): context.remove(self.default_store.service.store_local_context) for x in context: document.update(self.recursive_resolve(x)) elif isinstance(context, str): try: local_only = not self.default_store == self.context_store - doc = self.default_store.service.resolve_context(context, local_only=local_only) + doc = self.default_store.service.resolve_context( + context, local_only=local_only + ) except ValueError: try: - doc = self.context_store.service.resolve_context(context, local_only=False) + doc = self.context_store.service.resolve_context( + context, local_only=False + ) except ValueError as e: raise e document.update(self.recursive_resolve(doc)) @@ -130,31 +146,22 @@ def recursive_resolve(self, context: Union[Dict, List, str]) -> Dict: document.update(context) return document - def _load_shape(self, resource_id): - if resource_id not in self._imported: - try: - shape = self.context_store.retrieve(resource_id, version=None, cross_bucket=False) - except RetrievalError as e: - print(e, resource_id) - # failed, don't try to load again - self._imported.append(resource_id) - else: - json_dict = as_jsonld(shape, form="compacted", store_metadata=False, model_context=None, - metadata_context=None, context_resolver=self.context_store.service.resolve_context) - # this double conversion was due blank nodes were not "regenerated" with json-ld - temp_graph = Graph().parse(data=json.dumps(json_dict), format="json-ld") - self._graph.parse(data=temp_graph.serialize(format="n3"), format="n3") - self._imported.append(resource_id) - if hasattr(shape, "imports"): - for dependency in shape.imports: - self._load_shape(self.context.expand(dependency)) - - def _type_shape(self, iri: URIRef): + def load_shape_graph_from_source(self, graph_id: str, schema_id: str) -> Graph: try: - shape = self._sg.lookup_shape_from_node(iri) - except KeyError: - self._load_shape(self._shapes_to_resources[iri]) - # reloads the shapes graph - self._sg = ShapesGraphWrapper(self._graph) - shape = self._sg.lookup_shape_from_node(iri) - return shape + schema_resource = self.context_store.retrieve( + schema_id, version=None, cross_bucket=False + ) + except RetrievalError as e: + raise ValueError(f"Failed to retrieve {schema_id}: {str(e)}") from e + json_dict = as_jsonld( + schema_resource, + form="compacted", + store_metadata=False, + model_context=None, + metadata_context=None, + context_resolver=self.context_store.service.resolve_context, + ) + schema_graph = self._dataset_graph.graph(URIRef(graph_id)) + schema_graph.remove((None, None, None)) + schema_graph.parse(data=json.dumps(json_dict), format="json-ld") + return schema_graph diff --git a/kgforge/specializations/models/rdf_model.py b/kgforge/specializations/models/rdf_model.py index edf40dd59..9171f08fe 100644 --- a/kgforge/specializations/models/rdf_model.py +++ b/kgforge/specializations/models/rdf_model.py @@ -73,7 +73,10 @@ def _prefixes(self) -> Dict[str, str]: return self.service.context.prefixes def _types(self) -> List[str]: - return list(self.service.types_to_shapes.keys()) + return [ + self.service.context.to_symbol(cls) + for cls in self.service.class_to_shape.keys() + ] def context(self) -> Context: return self.service.context @@ -90,25 +93,38 @@ def _generate_context(self) -> Context: def _template(self, type: str, only_required: bool) -> Dict: try: - uri = self.service.types_to_shapes[type] - except KeyError as exc: - raise ValueError("type '" + type + "' not found in " + self.source) from exc - node_properties = self.service.materialize(uri) - dictionary = parse_attributes(node_properties, only_required, None) - return dictionary + shape_iri = self.service.get_shape_uriref_from_class_fragment(type) + node_properties = self.service.materialize(shape_iri) + print(node_properties) + dictionary = parse_attributes(node_properties, only_required, None) + return dictionary + except Exception as exc: + raise ValueError(f"Unable to generate template:{str(exc)}") from exc # Validation. def schema_id(self, type: str) -> str: try: - shape_iri = self.service.types_to_shapes[type] - return str(self.service.schema_source_id(shape_iri)) - except KeyError as exc: - raise ValueError("type not found") from exc - - def validate(self, data: Union[Resource, List[Resource]], execute_actions_before: bool, type_: str) -> None: - run(self._validate_one, self._validate_many, data, execute_actions=execute_actions_before, - exception=ValidationError, monitored_status="_validated", type_=type_) + shape_iri = self.service.get_shape_uriref_from_class_fragment(type) + return self.service.schema_id(shape_iri) + except Exception as exc: + raise ValueError(f"Unable to get the schema id:{str(exc)}") from exc + + def validate( + self, + data: Union[Resource, List[Resource]], + execute_actions_before: bool, + type_: str, + ) -> None: + run( + self._validate_one, + self._validate_many, + data, + execute_actions=execute_actions_before, + exception=ValidationError, + monitored_status="_validated", + type_=type_, + ) def _validate_many(self, resources: List[Resource], type_: str) -> None: for resource in resources: @@ -118,10 +134,14 @@ def _validate_many(self, resources: List[Resource], type_: str) -> None: action = Action(self._validate_many.__name__, conforms, None) else: resource._validated = False - violations = set(" ".join(re.findall('[A-Z][^A-Z]*', as_term(o))) - for o in graph.objects(None, SH.sourceConstraintComponent)) + violations = set( + " ".join(re.findall("[A-Z][^A-Z]*", as_term(o))) + for o in graph.objects(None, SH.sourceConstraintComponent) + ) message = f"violation(s) of type(s) {', '.join(sorted(violations))}" - action = Action(self._validate_many.__name__, conforms, ValidationError(message)) + action = Action( + self._validate_many.__name__, conforms, ValidationError(message) + ) resource._last_action = action @@ -133,11 +153,15 @@ def _validate_one(self, resource: Resource, type_: str) -> None: # Utils. @staticmethod - def _service_from_directory(dirpath: Path, context_iri: str, **dir_config) -> RdfService: + def _service_from_directory( + dirpath: Path, context_iri: str, **dir_config + ) -> RdfService: return DirectoryService(dirpath, context_iri) @staticmethod - def _service_from_store(store: Callable, context_config: Optional[Dict], **source_config) -> Any: + def _service_from_store( + store: Callable, context_config: Optional[Dict], **source_config + ) -> Any: default_store: Store = store(**source_config) @@ -146,15 +170,19 @@ def _service_from_store(store: Callable, context_config: Optional[Dict], **sourc context_token = context_config.get("token", default_store.token) context_bucket = context_config.get("bucket", default_store.bucket) context_iri = context_config.get("iri") - if (context_endpoint != default_store.endpoint - or context_token != default_store.token - or context_bucket != default_store.bucket): + if ( + context_endpoint != default_store.endpoint + or context_token != default_store.token + or context_bucket != default_store.bucket + ): source_config.pop("endpoint", None) source_config.pop("token", None) source_config.pop("bucket", None) context_store: Store = store( - endpoint=context_endpoint, bucket=context_bucket, token=context_token, - **source_config + endpoint=context_endpoint, + bucket=context_bucket, + token=context_token, + **source_config, ) # FIXME: define a store independent StoreService service = StoreService(default_store, context_iri, context_store) @@ -179,8 +207,9 @@ def _service_from_url(url: str, context_iri: Optional[str]) -> Any: raise not_supported() -def parse_attributes(node: NodeProperties, only_required: bool, - inherited_constraint: Optional[str]) -> Dict: +def parse_attributes( + node: NodeProperties, only_required: bool, inherited_constraint: Optional[str] +) -> Dict: attributes = {} if hasattr(node, "path"): if only_required is True: @@ -194,11 +223,15 @@ def parse_attributes(node: NodeProperties, only_required: bool, attributes[as_term(node.path)] = v elif hasattr(node, "properties"): parent_constraint = node.constraint if hasattr(node, "constraint") else None - attributes.update(parse_properties(node.properties, only_required, parent_constraint)) + attributes.update( + parse_properties(node.properties, only_required, parent_constraint) + ) return attributes -def parse_properties(items: List[NodeProperties], only_required: bool, inherited_constraint: str) -> Dict: +def parse_properties( + items: List[NodeProperties], only_required: bool, inherited_constraint: str +) -> Dict: props = {} for item in items: props.update(parse_attributes(item, only_required, inherited_constraint)) @@ -235,7 +268,9 @@ def default_values(values, one: bool): if sortable: return sorted(all_default_values) - types_position = {DEFAULT_TYPE_ORDER.index(type(v)): v for v in all_default_values} + types_position = { + DEFAULT_TYPE_ORDER.index(type(v)): v for v in all_default_values + } return [types_position[k] for k in sorted(types_position.keys())] else: return default_value(values) diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index cc914f07a..4b238c939 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -32,8 +32,11 @@ from kgforge.core.commons.constants import DEFAULT_REQUEST_TIMEOUT from kgforge.core.commons.dictionaries import update_dict from kgforge.core.commons.es_query_builder import ESQueryBuilder -from kgforge.core.commons.sparql_query_builder import SPARQLQueryBuilder, format_type, \ - CategoryDataType +from kgforge.core.commons.sparql_query_builder import ( + SPARQLQueryBuilder, + format_type, + CategoryDataType, +) from kgforge.core.resource import Resource from kgforge.core.archetypes.store import Store from kgforge.core.archetypes.mapping import Mapping @@ -60,14 +63,18 @@ from kgforge.core.wrappings.paths import Filter, create_filters_from_dict from kgforge.specializations.mappers.dictionaries import DictionaryMapper from kgforge.specializations.mappings.dictionaries import DictionaryMapping -from kgforge.specializations.stores.nexus.service import BatchAction, Service, _error_message +from kgforge.specializations.stores.nexus.service import ( + BatchAction, + Service, + _error_message, +) REQUEST_TIMEOUT = DEFAULT_REQUEST_TIMEOUT def catch_http_error_nexus( - r: requests.Response, e: Type[BaseException], error_message_formatter=_error_message + r: requests.Response, e: Type[BaseException], error_message_formatter=_error_message ): return catch_http_error(r, e, error_message_formatter) @@ -91,7 +98,7 @@ def mapper(self) -> Type[Mapper]: return DictionaryMapper def register( - self, data: Union[Resource, List[Resource]], schema_id: str = None + self, data: Union[Resource, List[Resource]], schema_id: str = None ) -> None: run( self._register_one, @@ -159,7 +166,7 @@ def _register_one(self, resource: Resource, schema_id: str) -> None: False, model_context=context, metadata_context=None, - context_resolver=self.service.resolve_context + context_resolver=self.service.resolve_context, ) params_register = copy.deepcopy(self.service.params.get("register", None)) @@ -176,7 +183,7 @@ def _register_one(self, resource: Resource, schema_id: str) -> None: headers=self.service.headers, data=json.dumps(data, ensure_ascii=True), params=params_register, - timeout=REQUEST_TIMEOUT + timeout=REQUEST_TIMEOUT, ) else: @@ -189,7 +196,7 @@ def _register_one(self, resource: Resource, schema_id: str) -> None: headers=self.service.headers, data=json.dumps(data, ensure_ascii=True), params=params_register, - timeout=REQUEST_TIMEOUT + timeout=REQUEST_TIMEOUT, ) catch_http_error_nexus(response, RegistrationError) @@ -218,9 +225,9 @@ def _create_task(path, loop, semaphore, session): data = MultipartWriter("form-data") part = data.append(path.open("rb")) part.headers[CONTENT_TYPE] = mime_type - part.headers[ - CONTENT_DISPOSITION - ] = f'form-data; name="file"; filename="{path.name}"' + part.headers[CONTENT_DISPOSITION] = ( + f'form-data; name="file"; filename="{path.name}"' + ) return loop.create_task(_upload(data, semaphore, session)) async def _upload(data, semaphore, session): @@ -230,9 +237,7 @@ async def _upload(data, semaphore, session): if response.status < 400: return body - msg = " ".join( - re.findall("[A-Z][^A-Z]*", body["@type"]) - ).lower() + msg = " ".join(re.findall("[A-Z][^A-Z]*", body["@type"])).lower() raise UploadingError(msg) return asyncio.run(_bulk()) @@ -272,18 +277,20 @@ def _local_url_parse(id_value, version_params) -> Tuple[str, Dict]: if version_params is not None: query_params.update(version_params) - formatted_fragment = '#' + fragment if fragment is not None else '' + formatted_fragment = "#" + fragment if fragment is not None else "" id_without_query = f"{parsed_id.scheme}://{parsed_id.netloc}{parsed_id.path}{formatted_fragment}" return id_without_query, query_params def _retrieve_id( - self, id_, retrieve_source: bool, cross_bucket: bool, query_params: Dict + self, id_, retrieve_source: bool, cross_bucket: bool, query_params: Dict ): """ - Retrieves assuming the provided identifier really is the id + Retrieves assuming the provided identifier really is the id """ - url_base = self.service.url_resolver if cross_bucket else self.service.url_resources + url_base = ( + self.service.url_resolver if cross_bucket else self.service.url_resources + ) url_resource = Service.add_schema_and_id_to_endpoint( url_base, schema_id=None, resource_id=id_ @@ -309,7 +316,10 @@ def _retrieve_id( url = url_resource response_not_source_with_metadata = requests.get( - url, params=query_params, headers=self.service.headers, timeout=REQUEST_TIMEOUT + url, + params=query_params, + headers=self.service.headers, + timeout=REQUEST_TIMEOUT, ) catch_http_error_nexus(response_not_source_with_metadata, RetrievalError) @@ -331,15 +341,20 @@ def _retrieve_id( # Retrieves the appropriate data if retrieve_source = True if _self: - return self._merge_metadata_with_source_data(_self, not_source_with_metadata, query_params) + return self._merge_metadata_with_source_data( + _self, not_source_with_metadata, query_params + ) raise RetrievalError("Cannot find metadata in payload") - def _merge_metadata_with_source_data(self, _self, data_not_source_with_metadata, query_params): + def _merge_metadata_with_source_data( + self, _self, data_not_source_with_metadata, query_params + ): response_source = requests.get( url=f"{_self}/source", - params=query_params, headers=self.service.headers, - timeout=REQUEST_TIMEOUT + params=query_params, + headers=self.service.headers, + timeout=REQUEST_TIMEOUT, ) catch_http_error_nexus(response_source, RetrievalError) # turns the retrieved data into a resource @@ -352,17 +367,20 @@ def _merge_metadata_with_source_data(self, _self, data_not_source_with_metadata, return resource def _retrieve_self( - self, self_, retrieve_source: bool, query_params: Dict + self, self_, retrieve_source: bool, query_params: Dict ) -> Resource: """ - Retrieves assuming the provided identifier is actually the resource's _self field + Retrieves assuming the provided identifier is actually the resource's _self field """ # TODO temporary # url = f"{self_}/source" if retrieve_source else self_ url = self_ response_not_source_with_metadata = requests.get( - url, params=query_params, headers=self.service.headers, timeout=REQUEST_TIMEOUT + url, + params=query_params, + headers=self.service.headers, + timeout=REQUEST_TIMEOUT, ) catch_http_error_nexus(response_not_source_with_metadata, RetrievalError) @@ -374,10 +392,16 @@ def _retrieve_self( except Exception as e: raise RetrievalError(e) from e - return self._merge_metadata_with_source_data(self_, not_source_with_metadata, query_params) + return self._merge_metadata_with_source_data( + self_, not_source_with_metadata, query_params + ) def retrieve( - self, id_: str, version: Optional[Union[int, str]], cross_bucket: bool = False, **params + self, + id_: str, + version: Optional[Union[int, str]], + cross_bucket: bool = False, + **params, ) -> Optional[Resource]: """ Retrieve a resource by its identifier from the configured store and possibly at a given version. @@ -405,21 +429,25 @@ def retrieve( id_value=id_, version_params=version_params ) - retrieve_source = params.get('retrieve_source', True) + retrieve_source = params.get("retrieve_source", True) # if retrieve_source: # query_params.update({"annotate": True}) try: return self._retrieve_id( - id_=id_without_query, retrieve_source=retrieve_source, - cross_bucket=cross_bucket, query_params=query_params + id_=id_without_query, + retrieve_source=retrieve_source, + cross_bucket=cross_bucket, + query_params=query_params, ) except RetrievalError as er: # without org and proj, vs with nexus_path_no_bucket = f"{self.service.endpoint}/resources/" - nexus_path = nexus_path_no_bucket if cross_bucket else self.service.url_resources + nexus_path = ( + nexus_path_no_bucket if cross_bucket else self.service.url_resources + ) if not id_without_query.startswith(nexus_path_no_bucket): raise er @@ -432,29 +460,38 @@ def retrieve( # Try to use the id as it was given return self._retrieve_self( - self_=id_without_query, retrieve_source=retrieve_source, query_params=query_params + self_=id_without_query, + retrieve_source=retrieve_source, + query_params=query_params, ) def _retrieve_filename(self, id_: str) -> Tuple[str, str]: - response = requests.get(id_, headers=self.service.headers, timeout=REQUEST_TIMEOUT) + response = requests.get( + id_, headers=self.service.headers, timeout=REQUEST_TIMEOUT + ) catch_http_error_nexus(response, DownloadingError) metadata = response.json() return metadata["_filename"], metadata["_mediaType"] def _download_many( - self, - urls: List[str], - paths: List[str], - store_metadata: Optional[DictWrapper], - cross_bucket: bool, - content_type: str, - buckets: List[str] + self, + urls: List[str], + paths: List[str], + store_metadata: Optional[DictWrapper], + cross_bucket: bool, + content_type: str, + buckets: List[str], ) -> None: async def _bulk(): loop = asyncio.get_event_loop() semaphore = Semaphore(self.service.max_connection) - headers = self.service.headers_download if not content_type else update_dict( - self.service.headers_download, {"Accept": content_type}) + headers = ( + self.service.headers_download + if not content_type + else update_dict( + self.service.headers_download, {"Accept": content_type} + ) + ) async with ClientSession(headers=headers) as session: tasks = ( _create_task(x, y, z, b, loop, semaphore, session) @@ -472,9 +509,9 @@ async def _download(url, path, store_metadata, bucket, semaphore, session): params_download = copy.deepcopy(self.service.params.get("download", {})) async with session.get(url, params=params_download) as response: catch_http_error_nexus( - response, DownloadingError, - error_message_formatter=lambda e: - f"Downloading url {url} from bucket {bucket} failed: {_error_message(e)}" + response, + DownloadingError, + error_message_formatter=lambda e: f"Downloading url {url} from bucket {bucket} failed: {_error_message(e)}", ) with open(path, "wb") as f: data = await response.read() @@ -483,29 +520,30 @@ async def _download(url, path, store_metadata, bucket, semaphore, session): return asyncio.run(_bulk()) def _download_one( - self, - url: str, - path: str, - store_metadata: Optional[DictWrapper], - cross_bucket: bool, - content_type: str, - bucket: str + self, + url: str, + path: str, + store_metadata: Optional[DictWrapper], + cross_bucket: bool, + content_type: str, + bucket: str, ) -> None: params_download = copy.deepcopy(self.service.params.get("download", {})) - headers = self.service.headers_download if not content_type else update_dict( - self.service.headers_download, {"Accept": content_type}) + headers = ( + self.service.headers_download + if not content_type + else update_dict(self.service.headers_download, {"Accept": content_type}) + ) response = requests.get( - url=url, - headers=headers, - params=params_download, - timeout=REQUEST_TIMEOUT + url=url, headers=headers, params=params_download, timeout=REQUEST_TIMEOUT ) catch_http_error_nexus( - response, DownloadingError, + response, + DownloadingError, error_message_formatter=lambda e: f"Downloading from bucket {bucket} failed: " - f"{_error_message(e)}" + f"{_error_message(e)}", ) with open(path, "wb") as f: @@ -513,10 +551,7 @@ def _download_one( f.write(chunk) def _prepare_download_one( - self, - url: str, - store_metadata: Optional[DictWrapper], - cross_bucket: bool + self, url: str, store_metadata: Optional[DictWrapper], cross_bucket: bool ) -> Tuple[str, str]: if cross_bucket: if store_metadata is not None: @@ -541,8 +576,10 @@ def _prepare_download_one( url_base = "/".join( ( self.service.make_endpoint( - endpoint=self.service.endpoint, endpoint_type="files", - organisation=org, project=project + endpoint=self.service.endpoint, + endpoint_type="files", + organisation=org, + project=project, ), quote_plus(file_id), ) @@ -551,7 +588,9 @@ def _prepare_download_one( # CR[U]D. - def update(self, data: Union[Resource, List[Resource]], schema_id: str = None) -> None: + def update( + self, data: Union[Resource, List[Resource]], schema_id: str = None + ) -> None: run( self._update_one, self._update_many, @@ -581,7 +620,7 @@ def _update_many(self, resources: List[Resource], schema_id: str) -> None: callback=update_callback, error_type=UpdatingError, params=params_update, - schema_id=schema_id + schema_id=schema_id, ) def _update_one(self, resource: Resource, schema_id: str) -> None: @@ -592,9 +631,11 @@ def _update_one(self, resource: Resource, schema_id: str) -> None: False, model_context=context, metadata_context=None, - context_resolver=self.service.resolve_context + context_resolver=self.service.resolve_context, + ) + url, params = self.service._prepare_uri( + resource, schema_id, use_unconstrained_id=True ) - url, params = self.service._prepare_uri(resource, schema_id, use_unconstrained_id=True) params_update = copy.deepcopy(self.service.params.get("update", {})) params_update.update(params) @@ -603,7 +644,7 @@ def _update_one(self, resource: Resource, schema_id: str) -> None: headers=self.service.headers, data=json.dumps(data, ensure_ascii=True), params=params_update, - timeout=REQUEST_TIMEOUT + timeout=REQUEST_TIMEOUT, ) catch_http_error_nexus(response, UpdatingError) @@ -615,17 +656,23 @@ def delete_schema(self, resource: Union[Resource, List[Resource]]): def _update_schema_one(self, resource: Resource, schema_id: str): url = Service.add_schema_and_id_to_endpoint( - endpoint=self.service.url_resources, schema_id=schema_id, resource_id=resource.id + endpoint=self.service.url_resources, + schema_id=schema_id, + resource_id=resource.id, ) response = requests.put( - url=f"{url}/update-schema", headers=self.service.headers, timeout=REQUEST_TIMEOUT + url=f"{url}/update-schema", + headers=self.service.headers, + timeout=REQUEST_TIMEOUT, ) catch_http_error_nexus(response, SchemaUpdateError) self.service.sync_metadata(resource, response.json()) def _update_schema_many(self, resources: List[Resource], schema_id: str): - update_schema_callback = self.service.default_callback(self._update_schema_many.__name__) + update_schema_callback = self.service.default_callback( + self._update_schema_many.__name__ + ) verified = self.service.verify( resources, @@ -633,7 +680,7 @@ def _update_schema_many(self, resources: List[Resource], schema_id: str): exception=SchemaUpdateError, id_required=True, required_synchronized=True, - execute_actions=False + execute_actions=False, ) self.service.batch_request( @@ -699,7 +746,7 @@ def _tag_one(self, resource: Resource, value: str) -> None: headers=self.service.headers, data=json.dumps(data, ensure_ascii=True), params=params_tag, - timeout=REQUEST_TIMEOUT + timeout=REQUEST_TIMEOUT, ) catch_http_error_nexus(response, TaggingError) @@ -750,7 +797,10 @@ def _deprecate_one(self, resource: Resource) -> None: params_deprecate = params response = requests.delete( - url, headers=self.service.headers, params=params_deprecate, timeout=REQUEST_TIMEOUT + url, + headers=self.service.headers, + params=params_deprecate, + timeout=REQUEST_TIMEOUT, ) catch_http_error_nexus(response, DeprecationError) self.service.sync_metadata(resource, response.json()) @@ -758,8 +808,10 @@ def _deprecate_one(self, resource: Resource) -> None: # Querying. def search( - self, *filters: Union[Dict, Filter], resolvers: Optional[List[Resolver]], - **params + self, + *filters: Union[Dict, Filter], + resolvers: Optional[List[Resolver]], + **params, ) -> List[Resource]: if "filters" in params: @@ -781,11 +833,10 @@ def search( includes = params.get("includes", None) excludes = params.get("excludes", None) search_endpoint = params.get( - "search_endpoint", Service.SPARQL_ENDPOINT_TYPE # default search endpoint is sparql + "search_endpoint", + Service.SPARQL_ENDPOINT_TYPE, # default search endpoint is sparql ) - valid_endpoints = [ - Service.SPARQL_ENDPOINT_TYPE, Service.ELASTIC_ENDPOINT_TYPE, - ] + valid_endpoints = [Service.SPARQL_ENDPOINT_TYPE, Service.ELASTIC_ENDPOINT_TYPE] if search_endpoint not in valid_endpoints: raise ValueError( @@ -818,7 +869,10 @@ def search( project_filter = "" query_statements, query_filters = SPARQLQueryBuilder.build( - schema=None, resolvers=resolvers, context=self.model_context(), filters=filters + schema=None, + resolvers=resolvers, + context=self.model_context(), + filters=filters, ) retrieve_source = params.get("retrieve_source", True) store_metadata_statements = [] @@ -827,48 +881,55 @@ def search( for i, k in enumerate(self.service.store_metadata_keys): _vars.append(f"?{k}") store_metadata_statements.insert( - i + 2, f"<{self.metadata_context.terms[k].id}> ?{k}") + i + 2, f"<{self.metadata_context.terms[k].id}> ?{k}" + ) deprecated_filter = f"Filter (?_deprecated = {format_type[CategoryDataType.BOOLEAN](deprecated)})" query_filters.append(deprecated_filter) else: _vars = ["?id", "?_project", "?_rev"] - store_metadata_statements.append(f"<{self.service.revision_property}> ?_rev") - store_metadata_statements.append(f"<{self.service.project_property}> ?_project") + store_metadata_statements.append( + f"<{self.service.revision_property}> ?_rev" + ) + store_metadata_statements.append( + f"<{self.service.project_property}> ?_project" + ) query_statements.append( - f"<{self.service.deprecated_property}> {format_type[CategoryDataType.BOOLEAN](deprecated)}", + f"<{self.service.deprecated_property}> {format_type[CategoryDataType.BOOLEAN](deprecated)}" ) query_statements.extend(store_metadata_statements) statements = ";\n ".join(query_statements) - _filters = "\n".join( - (".\n ".join(query_filters), project_filter) - ) - query = _create_select_query( - _vars, f"?id {statements} . \n {_filters}", distinct, - search_in_graph + _filters = "\n".join((".\n ".join(query_filters), project_filter)) + query = SPARQLQueryBuilder.create_select_query( + _vars, f"?id {statements} . \n {_filters}", distinct, search_in_graph ) # support @id and @type resources = self.sparql( - query, debug=debug, limit=limit, offset=offset, view=params.get("view", None) + query, + debug=debug, + limit=limit, + offset=offset, + view=params.get("view", None), ) params_retrieve = copy.deepcopy(self.service.params.get("retrieve", {})) - params_retrieve['retrieve_source'] = retrieve_source + params_retrieve["retrieve_source"] = retrieve_source results = self.service.batch_request( resources=resources, action=BatchAction.FETCH, callback=None, error_type=QueryingError, - params=params_retrieve + params=params_retrieve, ) resources = [] for result in results: resource = result.resource if retrieve_source: store_metadata_response = as_json( - result.resource, expanded=False, + result.resource, + expanded=False, store_metadata=False, model_context=None, metadata_context=None, - context_resolver=None + context_resolver=None, ) # store_metadata is obtained from SPARQL (resource) and # not from server (response) because of retrieve_source==True else: @@ -877,19 +938,28 @@ def search( resource = self.service.to_resource(result.response) except Exception as e: self.service.synchronize_resource( - resource, store_metadata_response, self.search.__name__, False, False + resource, + store_metadata_response, + self.search.__name__, + False, + False, ) raise ValueError(e) from e finally: self.service.synchronize_resource( - resource, store_metadata_response, self.search.__name__, True, True + resource, + store_metadata_response, + self.search.__name__, + True, + True, ) resources.append(resource) return resources else: if isinstance(self.service.elastic_endpoint["view"], LazyAction): - self.service.elastic_endpoint["view"] = \ - self.service.elastic_endpoint["view"].execute() + self.service.elastic_endpoint["view"] = self.service.elastic_endpoint[ + "view" + ].execute() elastic_mapping = self.service.elastic_endpoint["view"].get("mapping", None) @@ -906,31 +976,36 @@ def search( Filter( operator="__eq__", path=[ - deprecated_property_context_term.name - if deprecated_property_context_term is not None - else "_deprecated" + ( + deprecated_property_context_term.name + if deprecated_property_context_term is not None + else "_deprecated" + ) ], value=deprecated, ) - ) _project = None if bucket: - _project = '/'.join([self.endpoint, 'projects', bucket]) + _project = "/".join([self.endpoint, "projects", bucket]) elif not cross_bucket: - _project = '/'.join([self.endpoint, 'projects', self.organisation, self.project]) + _project = "/".join( + [self.endpoint, "projects", self.organisation, self.project] + ) if _project: filters.append( Filter( operator="__eq__", path=[ - project_property_context_term.name - if project_property_context_term is not None - else "_project" + ( + project_property_context_term.name + if project_property_context_term is not None + else "_project" + ) ], - value=_project + value=_project, ) ) @@ -945,8 +1020,11 @@ def search( ) return self.elastic( - json.dumps(query), debug=debug, limit=limit, offset=offset, - view=params.get("view", None) + json.dumps(query), + debug=debug, + limit=limit, + offset=offset, + view=params.get("view", None), ) @staticmethod # for testing @@ -962,20 +1040,26 @@ def reformat_contexts(model_context: Context, metadata_context: Optional[Context return ctx, prefixes, model_context.vocab - def get_context_prefix_vocab(self) -> Tuple[Optional[Dict], Optional[Dict], Optional[str]]: - return BlueBrainNexus.reformat_contexts(self.model_context(), self.service.metadata_context) + def get_context_prefix_vocab( + self, + ) -> Tuple[Optional[Dict], Optional[Dict], Optional[str]]: + return BlueBrainNexus.reformat_contexts( + self.model_context(), self.service.metadata_context + ) def _sparql(self, query: str, view: str) -> List[Resource]: - endpoint = self.service.sparql_endpoint["endpoint"] \ - if view is None \ + endpoint = ( + self.service.sparql_endpoint["endpoint"] + if view is None else self.service.make_query_endpoint_self(view, endpoint_type="sparql") + ) response = requests.post( endpoint, data=query, headers=self.service.headers_sparql, - timeout=REQUEST_TIMEOUT + timeout=REQUEST_TIMEOUT, ) catch_http_error_nexus(response, QueryingError) @@ -985,18 +1069,24 @@ def _sparql(self, query: str, view: str) -> List[Resource]: return SPARQLQueryBuilder.build_resource_from_response(query, data, context) def _elastic( - self, query: Dict, view: Optional[str], as_resource: bool, build_resource_from: str + self, + query: Dict, + view: Optional[str], + as_resource: bool, + build_resource_from: str, ) -> Optional[Union[List[Resource], Resource, List[Dict], Dict]]: - endpoint = self.service.elastic_endpoint["endpoint"] \ - if view is None \ + endpoint = ( + self.service.elastic_endpoint["endpoint"] + if view is None else self.service.make_query_endpoint_self(view, endpoint_type="elastic") + ) response = requests.post( endpoint, data=json.dumps(query), headers=self.service.headers_elastic, - timeout=REQUEST_TIMEOUT + timeout=REQUEST_TIMEOUT, ) catch_http_error_nexus(response, QueryingError) @@ -1028,14 +1118,16 @@ def _elastic( ) for hit in results ] + # Utils. def _initialize_service( - self, - endpoint: Optional[str], - token: Optional[str], - searchendpoints: Optional[Dict] = None, - **store_config, + self, + endpoint: Optional[str], + bucket: Optional[str], + token: Optional[str], + searchendpoints: Optional[Dict] = None, + **store_config, ) -> Any: try: self.organisation, self.project = self.bucket.split("/") @@ -1102,9 +1194,9 @@ def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: # try decoding the url first raw_url = unquote(uri) if is_file: # for files - url_base = '/'.join([self.endpoint, 'files', self.bucket]) + url_base = "/".join([self.endpoint, "files", self.bucket]) else: # for resources - url_base = '/'.join([self.endpoint, 'resources', self.bucket]) + url_base = "/".join([self.endpoint, "resources", self.bucket]) matches = re.match(r"[\w\.:%/-]+/(\w+):(\w+)/[\w\.-/:%]+", raw_url) if matches: groups = matches.groups() @@ -1121,7 +1213,7 @@ def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: resolved_id = id_ return url.replace(id_, quote_plus(resolved_id)) - extended_schema = ''.join([resolved, groups[1]]) + extended_schema = "".join([resolved, groups[1]]) url = raw_url.replace(old_schema, extended_schema) else: url = raw_url @@ -1147,12 +1239,3 @@ def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: def _freeze_many(self, resources: List[Resource]) -> None: raise not_supported() - - -def _create_select_query(vars_, statements, distinct, search_in_graph): - where_clauses = ( - f"{{ Graph ?g {{{statements}}}}}" if search_in_graph else f"{{{statements}}}" - ) - join_vars_ = ' '.join(vars_) - select_vars = f"DISTINCT {join_vars_}" if distinct else f"{join_vars_}" - return f"SELECT {select_vars} WHERE {where_clauses}" diff --git a/kgforge/specializations/stores/sparql_store.py b/kgforge/specializations/stores/sparql_store.py index 1ff4b0b14..e42f6f24c 100644 --- a/kgforge/specializations/stores/sparql_store.py +++ b/kgforge/specializations/stores/sparql_store.py @@ -29,7 +29,6 @@ from kgforge.core.commons.exceptions import QueryingError from kgforge.core.commons.execution import not_supported from kgforge.core.commons.sparql_query_builder import SPARQLQueryBuilder -from kgforge.specializations.stores.bluebrain_nexus import _create_select_query class SPARQLStore(DatasetStore): @@ -37,6 +36,14 @@ class SPARQLStore(DatasetStore): REQUEST_TIMEOUT = DEFAULT_REQUEST_TIMEOUT + def __init__( + self, + model: Optional[Model] = None, + endpoint: Optional[str] = None, + file_resource_mapping: Optional[str] = None, + searchendpoints: Optional[Dict] = None, + **store_config, + ) -> None: def __init__( self, model: Optional[Model] = None, @@ -52,6 +59,9 @@ def __init__( self.service = self._initialize_service( endpoint, searchendpoints, **store_config ) + self.service = self._initialize_service( + endpoint, searchendpoints, **store_config + ) @property def mapper(self) -> Optional[Type[Mapper]]: @@ -65,7 +75,29 @@ def _download_one( cross_bucket: bool, content_type: str, bucket: str, + self, + url: str, + path: str, + store_metadata: Optional[DictWrapper], + cross_bucket: bool, + content_type: str, + bucket: str, ) -> None: + # path: FilePath. + # TODO define downloading method + # POLICY Should notify of failures with exception DownloadingError including a message. + raise not_supported() + + def retrieve( + self, + id_: str, + version: Optional[Union[int, str]], + cross_bucket: bool = False, + **params, + ) -> Optional[Resource]: + raise not_supported() + + def _retrieve_filename(self, id: str) -> str: raise not_supported() def _search( @@ -73,6 +105,10 @@ def _search( *filters: Union[Dict, Filter], resolvers: Optional[List[Resolver]] = None, **params, + self, + *filters: Union[Dict, Filter], + resolvers: Optional[List[Resolver]] = None, + **params, ) -> List[Resource]: # Positional arguments in 'filters' are instances of type Filter from wrappings/paths.py # A dictionary can be provided for filters: @@ -101,6 +137,9 @@ def _search( search_endpoint = params.get( "search_endpoint", SPARQLService.SPARQL_ENDPOINT_TYPE ) + search_endpoint = params.get( + "search_endpoint", SPARQLService.SPARQL_ENDPOINT_TYPE + ) valid_endpoints = [SPARQLService.SPARQL_ENDPOINT_TYPE] @@ -129,22 +168,35 @@ def _search( resolvers=resolvers, context=self.model_context(), filters=filters, + schema=None, + resolvers=resolvers, + context=self.model_context(), + filters=filters, ) statements = ";\n ".join(query_statements) _filters = (".\n".join(query_filters) + "\n") if len(filters) > 0 else "" + _filters = (".\n".join(query_filters) + "\n") if len(filters) > 0 else "" _vars = ["?id"] - query = _create_select_query( + query = SPARQLQueryBuilder.create_select_query( _vars, f"?id {statements} . \n {_filters}", distinct, False ) # support @id and @type resources = self.sparql(query, debug=debug, limit=limit, offset=offset) return resources + def _sparql( + self, query: str, endpoint: str + ) -> Optional[Union[List[Resource], Resource]]: def _sparql( self, query: str, endpoint: str ) -> Optional[Union[List[Resource], Resource]]: try: response = requests.post( + ( + self.service.sparql_endpoint["endpoint"] + if endpoint is None + else endpoint + ), ( self.service.sparql_endpoint["endpoint"] if endpoint is None @@ -153,6 +205,7 @@ def _sparql( data=query, headers=self.service.headers_sparql, timeout=SPARQLStore.REQUEST_TIMEOUT, + timeout=SPARQLStore.REQUEST_TIMEOUT, ) response.raise_for_status() except Exception as e: @@ -161,34 +214,14 @@ def _sparql( data = response.json() return SPARQLQueryBuilder.build_resource_from_response( - query, data, self.model_context + query, data, self.model_context() ) - def elastic( - self, query: str, debug: bool, limit: int = None, offset: int = None, **params - ) -> Optional[Union[List[Resource], Resource]]: - raise not_supported() - - def _prepare_download_one( - self, url: str, store_metadata: Optional[DictWrapper], cross_bucket: bool - ) -> Tuple[str, str]: - raise not_supported() - - def retrieve( - self, id: str, version: Optional[Union[int, str]], cross_bucket: bool, **params - ) -> Resource: - not_supported() - - def _retrieve_filename(self, id: str) -> str: - not_supported() - - def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: - raise not_supported() - # Utils. def _initialize_service( self, endpoint: Optional[str], searchendpoints: Optional[Dict], **store_config + self, endpoint: Optional[str], searchendpoints: Optional[Dict], **store_config ) -> SPARQLService: try: max_connection = store_config.pop("max_connection", 50) @@ -200,13 +233,14 @@ def _initialize_service( accept = store_config.pop("Accept", "application/ld+json") params = store_config.pop("params", {}) store_context = store_config.pop("store_context", None) + store_context = store_config.pop("store_context", None) except Exception as ve: raise ValueError(f"Store configuration error: {ve}") from ve return SPARQLService( endpoint=endpoint, - model_context=self.model_context, + model_context=self.model_context(), store_context=store_context, max_connection=max_connection, searchendpoints=searchendpoints, @@ -214,3 +248,16 @@ def _initialize_service( accept=accept, **params, ) + + def elastic( + self, query: str, debug: bool, limit: int = None, offset: int = None, **params + ) -> Optional[Union[List[Resource], Resource]]: + raise not_supported() + + def _prepare_download_one( + self, url: str, store_metadata: Optional[DictWrapper], cross_bucket: bool + ) -> Tuple[str, str]: + raise not_supported() + + def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: + raise not_supported() diff --git a/setup.py b/setup.py index f79e24957..611d2176d 100644 --- a/setup.py +++ b/setup.py @@ -43,9 +43,9 @@ "pandas", "nexus-sdk", "aiohttp", - "rdflib==6.3.2", + "rdflib==7.0.0", "pyLD", - "pyshacl==v0.23.0", + "pyshacl==v0.25.0", "nest-asyncio>=1.5.1", "pyparsing>=2.0.2", "owlrl>=5.2.3", @@ -53,7 +53,13 @@ "requests==2.31.0", ], extras_require={ - "dev": ["tox", "pytest", "pytest-bdd==3.4.0", "pytest-cov", "pytest-mock"], + "dev": [ + "tox", + "pytest==7.3.0", + "pytest-bdd==3.4.0", + "pytest-cov", + "pytest-mock", + ], "docs": ["sphinx", "sphinx-bluebrain-theme"], "linking_sklearn": ["scikit-learn"], }, diff --git a/tests/conftest.py b/tests/conftest.py index ddc30ec12..5ff1b33fe 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -14,6 +14,7 @@ from typing import Callable, List, Union, Dict, Optional from uuid import uuid4 +from kgforge.specializations.models.rdf_model import RdfModel from utils import full_path_relative_to_root import pytest from pytest_bdd import given, parsers, then, when @@ -292,11 +293,23 @@ def context_file_path(): return full_path_relative_to_root("tests/data/shacl-model/context.json") +@pytest.fixture(scope="session") +def shacl_schemas_file_path(): + return full_path_relative_to_root("tests/data/shacl-model/commons") + + @pytest.fixture(scope="session") def context_iri_file(context_file_path): return f"file://{context_file_path}" +@pytest.fixture(scope="function") +def rdf_model_from_dir(context_iri_file, shacl_schemas_file_path): + return RdfModel( + shacl_schemas_file_path, context={"iri": context_iri_file}, origin="directory" + ) + + @pytest.fixture(scope="session") def context_iri(): return f"http://example.org/context" @@ -319,6 +332,7 @@ def model_prefixes(): "owl": "http://www.w3.org/2002/07/owl#", "xsd": "http://www.w3.org/2001/XMLSchema#", "foaf": "http://xmlns.com/foaf/0.1/", + "sh": "http://www.w3.org/ns/shacl#", "mba": "http://api.brain-map.org/api/v2/data/Structure/", "obo": "http://purl.obolibrary.org/obo/", } diff --git a/tests/data/shacl-model/commons/shapes-1.json b/tests/data/shacl-model/commons/shapes-1.json index 43a0cadee..354c0ebb6 100644 --- a/tests/data/shacl-model/commons/shapes-1.json +++ b/tests/data/shacl-model/commons/shapes-1.json @@ -76,6 +76,9 @@ "hasValue": { "@id": "sh:hasValue" }, + "message": { + "@id": "sh:message" + }, "shapes": { "@id": "nxv:shapes", "@type": "@id", @@ -83,12 +86,15 @@ } }, "@id": "http://shapes.ex/person", - "@type": "this:Schema", + "@type": "nxv:Schema", "shapes": [ { "@id": "schema:PostalAddress", - "@type": ["sh:NodeShape", "rdfs:Class"], - "closed" : true, + "@type": [ + "sh:NodeShape", + "rdfs:Class" + ], + "closed": true, "nodeKind": "sh:BlankNode", "property": [ { @@ -124,11 +130,15 @@ { "path": "schema:givenName", "datatype": "xsd:string", - "minCount": 1 + "minCount": 1, + "message": "Mandatory property 'schema:givenName' of type 'xsd:string' is missing" }, { "path": "schema:gender", - "in" : ["female", "male" ], + "in": [ + "female", + "male" + ], "minCount": 1, "maxCount": 1 }, @@ -144,52 +154,11 @@ "maxCount": 1 }, { - "path": "schema:address" , + "path": "schema:address", "node": "schema:PostalAddress" } ] }, - { - "@id": "this:EmployeeShape", - "@type": "sh:NodeShape", - "nodeKind": "sh:IRI", - "targetClass": "this:Employee", - "and": [ - { - "node": "this:PersonShape" - }, - { - "path": "schema:startDate", - "datatype": "xsd:date", - "minCount": 1, - "maxCount": 1 - }, - { - "path": "schema:colleague", - "class": "schema:Person" - }, - { - "path": "schema:worksFor", - "or": [ - { "class": "schema:Person" }, - { "class": "schema:Organization" } - ] - - }, - { - "or": [ - { - "path": "schema:contractor", - "class": "schema:Organization" - }, - { - "path": "schema:department", - "class": "schema:Organization" - } - ] - } - ] - }, { "@id": "this:OrganizationShape", "@type": "sh:NodeShape", @@ -218,6 +187,4 @@ } } ] -} - - +} \ No newline at end of file diff --git a/tests/data/shacl-model/commons/shapes-2.json b/tests/data/shacl-model/commons/shapes-2.json index 68d2360f7..c2128b88c 100644 --- a/tests/data/shacl-model/commons/shapes-2.json +++ b/tests/data/shacl-model/commons/shapes-2.json @@ -6,6 +6,7 @@ "xsd": "http://www.w3.org/2001/XMLSchema#", "prov": "http://www.w3.org/ns/prov#", "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", + "nxv": "https://bluebrain.github.io/nexus/vocabulary/", "or": { "@id": "sh:or", "@type": "@id", @@ -53,76 +54,87 @@ }, "hasValue": { "@id": "sh:hasValue" + }, + "shapes": { + "@id": "nxv:shapes", + "@type": "@id", + "@container": "@set" } }, - "@id": "this:ActivityShape", - "@type": "sh:NodeShape", - "nodeKind": "sh:IRI", - "targetClass": "prov:Activity", - "property": [ - { - "@context": { - "hasValue": { - "@id": "sh:hasValue", - "@type": "@id" - } - }, - "path": "rdf:type", - "hasValue": "prov:Activity" - }, - { - "path": "prov:generated", - "class": "prov:Entity", - "minCount": 1 - }, - { - "path": "prov:used", - "class": "prov:Entity" - }, + "@id": "http://shapes.ex/activity", + "@type": "nxv:Schema", + "shapes": [ { - "path": "schema:author", - "xone": [ + "@id": "this:ActivityShape", + "@type": "sh:NodeShape", + "nodeKind": "sh:IRI", + "targetClass": "prov:Activity", + "property": [ { - "class": "schema:Person" + "@context": { + "hasValue": { + "@id": "sh:hasValue", + "@type": "@id" + } + }, + "path": "rdf:type", + "hasValue": "prov:Activity" }, { - "class": "schema:Organization" - } - ], - "maxCount": 1 - }, - { - "path": "schema:status", - "hasValue": "completed", - "minCount": 1, - "maxCount": 1 - }, - { - "path": "prov:startedAtTime", - "datatype": "xsd:dateTime", - "lessThan": "prov:endedAtTime", - "maxCount": 1 - }, - { - "path": "prov:endedAtTime", - "datatype": "xsd:dateTime", - "maxCount": 1 - }, - { - "path": "schema:validated", - "datatype": "xsd:boolean", - "maxCount": 1 - }, - { - "path": "schema:citation", - "name": "Citation", - "description": "A citation or reference to another creative work, such as another publication, web page, scholarly article, etc.", - "or": [ + "path": "prov:generated", + "class": "prov:Entity", + "minCount": 1 + }, + { + "path": "prov:used", + "class": "prov:Entity" + }, + { + "path": "schema:author", + "xone": [ + { + "class": "schema:Person" + }, + { + "class": "schema:Organization" + } + ], + "maxCount": 1 + }, + { + "path": "schema:status", + "hasValue": "completed", + "minCount": 1, + "maxCount": 1 + }, + { + "path": "prov:startedAtTime", + "datatype": "xsd:dateTime", + "lessThan": "prov:endedAtTime", + "maxCount": 1 + }, + { + "path": "prov:endedAtTime", + "datatype": "xsd:dateTime", + "maxCount": 1 + }, { - "datatype": "xsd:string" + "path": "schema:validated", + "datatype": "xsd:boolean", + "maxCount": 1 }, { - "nodeKind": "sh:IRI" + "path": "schema:citation", + "name": "Citation", + "description": "A citation or reference to another creative work, such as another publication, web page, scholarly article, etc.", + "or": [ + { + "datatype": "xsd:string" + }, + { + "nodeKind": "sh:IRI" + } + ] } ] } diff --git a/tests/data/shacl-model/commons/shapes-3.json b/tests/data/shacl-model/commons/shapes-3.json index 0dab8a19b..31feb1334 100644 --- a/tests/data/shacl-model/commons/shapes-3.json +++ b/tests/data/shacl-model/commons/shapes-3.json @@ -5,6 +5,7 @@ "schema": "http://schema.org/", "xsd": "http://www.w3.org/2001/XMLSchema#", "prov": "http://www.w3.org/ns/prov#", + "nxv": "https://bluebrain.github.io/nexus/vocabulary/", "nodeKind": { "@id": "sh:nodeKind", "@type": "@id" @@ -46,12 +47,12 @@ } }, "@id": "http://shapes.ex/building", - "@type": "this:Schema", + "@type": "nxv:Schema", "shapes": [ { "@id": "this:GeoShape", "@type": "sh:NodeShape", - "closed" : true, + "closed": true, "property": [ { "path": "schema:latitude", @@ -92,6 +93,4 @@ ] } ] -} - - +} \ No newline at end of file diff --git a/tests/data/shacl-model/commons/shapes-4.json b/tests/data/shacl-model/commons/shapes-4.json new file mode 100644 index 000000000..41aec18c3 --- /dev/null +++ b/tests/data/shacl-model/commons/shapes-4.json @@ -0,0 +1,140 @@ +{ + "@context": { + "this": "http://www.example.com/", + "sh": "http://www.w3.org/ns/shacl#", + "schema": "http://schema.org/", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "prov": "http://www.w3.org/ns/prov#", + "owl": "http://www.w3.org/2002/07/owl#", + "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", + "nxv": "https://bluebrain.github.io/nexus/vocabulary/", + "rdfs": "http://www.w3.org/2000/01/rdf-schema#", + "node": { + "@id": "sh:node", + "@type": "@id" + }, + "and": { + "@id": "sh:and", + "@type": "@id", + "@container": "@list" + }, + "or": { + "@id": "sh:or", + "@type": "@id", + "@container": "@list" + }, + "xone": { + "@id": "sh:xone", + "@type": "@id", + "@container": "@list" + }, + "in": { + "@id": "sh:in", + "@container": "@list" + }, + "minInclusive": { + "@id": "sh:minInclusive" + }, + "maxInclusive": { + "@id": "sh:maxInclusive" + }, + "nodeKind": { + "@id": "sh:nodeKind", + "@type": "@id" + }, + "targetClass": { + "@id": "sh:targetClass", + "@type": "@id" + }, + "path": { + "@id": "sh:path", + "@type": "@id" + }, + "datatype": { + "@id": "sh:datatype", + "@type": "@id" + }, + "property": { + "@id": "sh:property", + "@type": "@id" + }, + "class": { + "@id": "sh:class", + "@type": "@id" + }, + "lessThan": { + "@id": "sh:lessThan", + "@type": "@id" + }, + "maxCount": { + "@id": "sh:maxCount", + "@type": "xsd:integer" + }, + "minCount": { + "@id": "sh:minCount", + "@type": "xsd:integer" + }, + "hasValue": { + "@id": "sh:hasValue" + }, + "message": { + "@id": "sh:message" + }, + "shapes": { + "@id": "nxv:shapes", + "@type": "@id", + "@container": "@set" + } + }, + "@id": "http://shapes.ex/employee", + "@type": "nxv:Schema", + "owl:imports": [ + "http://shapes.ex/person" + ], + "shapes": [ + { + "@id": "this:EmployeeShape", + "@type": "sh:NodeShape", + "nodeKind": "sh:IRI", + "targetClass": "this:Employee", + "and": [ + { + "node": "this:PersonShape" + }, + { + "path": "schema:startDate", + "datatype": "xsd:date", + "minCount": 1, + "maxCount": 1 + }, + { + "path": "schema:colleague", + "class": "schema:Person" + }, + { + "path": "schema:worksFor", + "or": [ + { + "class": "schema:Person" + }, + { + "class": "schema:Organization" + } + ] + }, + { + "or": [ + { + "path": "schema:contractor", + "class": "schema:Organization" + }, + { + "path": "schema:department", + "class": "schema:Organization" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/tests/data/shacl-model/context.json b/tests/data/shacl-model/context.json index ba71968be..9f2397d8d 100644 --- a/tests/data/shacl-model/context.json +++ b/tests/data/shacl-model/context.json @@ -159,7 +159,8 @@ "xsd": "http://www.w3.org/2001/XMLSchema#", "foaf": "http://xmlns.com/foaf/0.1/", "mba": "http://api.brain-map.org/api/v2/data/Structure/", - "obo": "http://purl.obolibrary.org/obo/" + "obo": "http://purl.obolibrary.org/obo/", + "sh": "http://www.w3.org/ns/shacl#" }, "@id": "http://context.example.org" } \ No newline at end of file diff --git a/tests/specializations/models/data.py b/tests/specializations/models/data.py index e3f2b1e63..07e136af1 100644 --- a/tests/specializations/models/data.py +++ b/tests/specializations/models/data.py @@ -13,125 +13,177 @@ # along with Blue Brain Nexus Forge. If not, see . from copy import deepcopy +from rdflib import URIRef + +from tests.conftest import shacl_schemas_file_path + ORGANIZATION = { "id": "", "type": "Organization", "name": "", - "parentOrganization": { - "id": "", - "type": "Organization" - } + "parentOrganization": {"id": "", "type": "Organization"}, } PERSON_TEMPLATE = { "id": "", "type": "Person", - "address": - { - "type": "PostalAddress", - "postalCode": ["",0], - "streetAddress": "", - }, + "address": {"type": "PostalAddress", "postalCode": ["", 0], "streetAddress": ""}, "birthDate": "9999-12-31", "deathDate": "9999-12-31", "gender": ["female", "male"], "givenName": "", - "familyName":"" + "familyName": "", } EMPLOYEE_TEMPLATE = deepcopy(PERSON_TEMPLATE) EMPLOYEE_TEMPLATE["type"] = "Employee" -EMPLOYEE_TEMPLATE.update({ - "colleague": { - "type": "Person", - "id": "", - "address": - { - "type": "PostalAddress", - "postalCode": ["",0], - "streetAddress": "", +EMPLOYEE_TEMPLATE.update( + { + "colleague": { + "type": "Person", + "id": "", + "address": { + "type": "PostalAddress", + "postalCode": ["", 0], + "streetAddress": "", + }, + "birthDate": "9999-12-31", + "deathDate": "9999-12-31", + "gender": ["female", "male"], + "givenName": "", + "familyName": "", }, - "birthDate": "9999-12-31", - "deathDate": "9999-12-31", - "gender": ["female", "male"], - "givenName": "", - "familyName":"" - }, - "contractor": { - "id": "", - "type": "Organization", - "name": "", - "parentOrganization": { + "contractor": { "id": "", - "type": "Organization" - } - }, - "department": { - "id": "", - "type": "Organization", - "name": "", - "parentOrganization": { + "type": "Organization", + "name": "", + "parentOrganization": {"id": "", "type": "Organization"}, + }, + "department": { "id": "", - "type": "Organization" - } - }, - "startDate": "9999-12-31", - "worksFor": { - "id": "", - "type": ["Organization", "Person"] + "type": "Organization", + "name": "", + "parentOrganization": {"id": "", "type": "Organization"}, + }, + "startDate": "9999-12-31", + "worksFor": {"id": "", "type": ["Organization", "Person"]}, } -}) -employee_keys_order = ["id", "type", "address", "birthDate", "colleague", "contractor", "deathDate", - "department", "gender", "givenName", "familyName", "startDate", "worksFor"] +) +employee_keys_order = [ + "id", + "type", + "address", + "birthDate", + "colleague", + "contractor", + "deathDate", + "department", + "gender", + "givenName", + "familyName", + "startDate", + "worksFor", +] EMPLOYEE_TEMPLATE = {k: EMPLOYEE_TEMPLATE[k] for k in employee_keys_order} -ENTITY = { - "id": "", - "type": "Entity" -} +ENTITY = {"id": "", "type": "Entity"} ACTIVITY_TEMPLATE = { "id": "", "type": "Activity", - "citation": { - "id": "" - }, + "citation": {"id": ""}, "endedAtTime": "9999-12-31T00:00:00", "generated": ENTITY, "startedAtTime": "9999-12-31T00:00:00", "status": "completed", "used": ENTITY, "validated": False, - "author": { - "id": "", - "type": ["Organization", "Person"] - } + "author": {"id": "", "type": ["Organization", "Person"]}, } -ACTIVITY_TEMPLATE_MANDATORY = {k: v for k, v in ACTIVITY_TEMPLATE.items() if k in ["id", "type", "generated", "status"]} +ACTIVITY_TEMPLATE_MANDATORY = { + k: v + for k, v in ACTIVITY_TEMPLATE.items() + if k in ["id", "type", "generated", "status"] +} BUILDING_TEMPLATE = { "id": "", "type": "Building", "description": "", - "geo": { - "latitude": 0.0, - "longitude": 0.0 + "geo": {"latitude": 0.0, "longitude": 0.0}, + "image": {"id": ""}, + "name": "", +} +BUILDING_TEMPLATE_MANDATORY = { + k: v + for k, v in BUILDING_TEMPLATE.items() + if k in ["id", "type", "description", "name"] +} + +TYPES_SHAPES_MAP = { + "Activity": { + "shape": "http://www.example.com/ActivityShape", + "schema": "http://shapes.ex/activity", + "named_graph": f"{shacl_schemas_file_path}/shapes-2.json", + "imports": [], + "parent_node_shapes": [], + "number_of_direct_property_shapes": 9, + "number_of_inherited_property_shapes": 0, }, - "image": { - "id": "" + "Association": { + "shape": "http://www.example.com/AssociationShape", + "schema": "http://shapes.ex/person", + "named_graph": f"{shacl_schemas_file_path}/shapes-1.json", + "imports": [], + "parent_node_shapes": [], + "number_of_direct_property_shapes": 1, + "number_of_inherited_property_shapes": 0, + }, + "Building": { + "shape": "http://www.example.com/BuildingShape", + "schema": "http://shapes.ex/building", + "named_graph": f"{shacl_schemas_file_path}/shapes-3.json", + "imports": [], + "parent_node_shapes": [], + "number_of_direct_property_shapes": 4, + "number_of_inherited_property_shapes": 0, + }, + "Employee": { + "shape": "http://www.example.com/EmployeeShape", + "schema": "http://shapes.ex/employee", + "named_graph": f"{shacl_schemas_file_path}/shapes-4.json", + "imports": ["http://shapes.ex/person"], + "parent_node_shapes": [URIRef("http://www.example.com/PersonShape")], + "number_of_direct_property_shapes": 0, + "number_of_inherited_property_shapes": 6, + }, + "Organization": { + "shape": "http://www.example.com/OrganizationShape", + "schema": "http://shapes.ex/person", + "named_graph": f"{shacl_schemas_file_path}/shapes-1.json", + "imports": [], + "parent_node_shapes": [], + "number_of_direct_property_shapes": 2, + "number_of_inherited_property_shapes": 0, + }, + "Person": { + "shape": "http://www.example.com/PersonShape", + "schema": "http://shapes.ex/person", + "named_graph": f"{shacl_schemas_file_path}/shapes-1.json", + "imports": [], + "parent_node_shapes": [], + "number_of_direct_property_shapes": 6, + "number_of_inherited_property_shapes": 0, + }, + "PostalAddress": { + "shape": "http://schema.org/PostalAddress", + "schema": "http://shapes.ex/person", + "named_graph": f"{shacl_schemas_file_path}/shapes-1.json", + "imports": [], + "parent_node_shapes": [], + "number_of_direct_property_shapes": 2, + "number_of_inherited_property_shapes": 0, }, - "name": "" } -BUILDING_TEMPLATE_MANDATORY = {k: v for k, v in BUILDING_TEMPLATE.items() if k in ["id", "type", "description", "name"]} - -TYPES_SCHEMAS_MAP = { - "Activity": "http://www.example.com/ActivityShape", - "Association": "http://www.example.com/AssociationShape", - "Building": "http://www.example.com/BuildingShape", - "Employee": "http://www.example.com/EmployeeShape", - "Organization": "http://www.example.com/OrganizationShape", - "Person": "http://www.example.com/PersonShape", - "PostalAddress": "http://schema.org/PostalAddress", -} \ No newline at end of file diff --git a/tests/specializations/models/test_rdf_directory_service.py b/tests/specializations/models/test_rdf_directory_service.py new file mode 100644 index 000000000..e9a75677f --- /dev/null +++ b/tests/specializations/models/test_rdf_directory_service.py @@ -0,0 +1,65 @@ +# +# Blue Brain Nexus Forge is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Blue Brain Nexus Forge is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser +# General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Blue Brain Nexus Forge. If not, see . +import os +from pathlib import Path +import rdflib +from kgforge.specializations.models import RdfModel +from kgforge.specializations.models.rdf.directory_service import ( + _load_rdf_files_as_graph, +) +from tests.specializations.models.data import TYPES_SHAPES_MAP + + +def test_load_rdf_files_as_graph(shacl_schemas_file_path): + graph_dataset = _load_rdf_files_as_graph(Path(shacl_schemas_file_path)) + assert isinstance(graph_dataset, rdflib.Dataset) + shape_graphs = [str(g.identifier) for g in graph_dataset.graphs()] + assert len(shape_graphs) == 5 + expected_file_paths = [ + str(f.resolve()) + for f in Path(shacl_schemas_file_path).rglob(os.path.join("*.*")) + ] + expected_named_graphs = expected_file_paths + ["urn:x-rdflib:default"] + assert sorted(shape_graphs) == sorted(expected_named_graphs) + for file_path in expected_file_paths: + g = graph_dataset.graph(file_path) + expected_g = rdflib.Graph().parse(file_path, format="json-ld") + assert len(g) > 0 + assert len(g) == len(expected_g) + + +def test_build_shapes_map(rdf_model_from_dir: RdfModel): + (class_to_shape, shape_to_defining_resource, defining_resource_to_named_graph) = ( + rdf_model_from_dir.service._build_shapes_map() + ) + + geo_shape_uri = ( + "http://www.example.com/GeoShape" # The only shape not targeting a class + ) + assert sorted( + list(class_to_shape.values()) + [rdflib.URIRef(geo_shape_uri)] + ) == sorted(list(shape_to_defining_resource.keys())) + assert sorted(set(shape_to_defining_resource.values())) == sorted( + set(defining_resource_to_named_graph.keys()) + ) + expected_targeted_classes = list(TYPES_SHAPES_MAP.keys()) + loaded_classes = [ + rdf_model_from_dir.service.context.to_symbol(cls) + for cls in class_to_shape.keys() + ] + assert sorted(loaded_classes) == sorted(expected_targeted_classes) + expected_shapes = [val["shape"] for val in TYPES_SHAPES_MAP.values()] + expected_shapes.append(geo_shape_uri) + loaded_shapes = [str(s) for s in shape_to_defining_resource.keys()] + assert sorted(loaded_shapes) == sorted(expected_shapes) diff --git a/tests/specializations/models/test_rdf_model.py b/tests/specializations/models/test_rdf_model.py index 099169f70..1de6d97bc 100644 --- a/tests/specializations/models/test_rdf_model.py +++ b/tests/specializations/models/test_rdf_model.py @@ -11,6 +11,7 @@ # # You should have received a copy of the GNU Lesser General Public License # along with Blue Brain Nexus Forge. If not, see . + import json import pytest @@ -18,59 +19,59 @@ from kgforge.core.commons.exceptions import ValidationError from kgforge.specializations.models import RdfModel from tests.specializations.models.data import * -from utils import full_path_relative_to_root - - -@pytest.fixture -def rdf_model(context_iri_file): - return RdfModel(full_path_relative_to_root("tests/data/shacl-model"), - context={"iri": context_iri_file}, - origin="directory") class TestVocabulary: - def test_generate_context(self, rdf_model: RdfModel): - generated_context = rdf_model._generate_context() - for k in TYPES_SCHEMAS_MAP.keys(): + def test_generate_context(self, rdf_model_from_dir: RdfModel): + generated_context = rdf_model_from_dir._generate_context() + for k in TYPES_SHAPES_MAP.keys(): assert generated_context.expand(k) is not None - def test_types(self, rdf_model: RdfModel): - types = rdf_model.types(pretty=False) - assert types == list(TYPES_SCHEMAS_MAP.keys()) + def test_types(self, rdf_model_from_dir: RdfModel): + types = rdf_model_from_dir.types(pretty=False) + assert types == list(TYPES_SHAPES_MAP.keys()) - def test_context(self, rdf_model: RdfModel, context_file_path): + def test_context(self, rdf_model_from_dir: RdfModel, context_file_path): with open(context_file_path) as f: expected = json.load(f) - vocabulary = rdf_model.context().document + vocabulary = rdf_model_from_dir.context().document assert vocabulary == expected - def test_namespaces(self, rdf_model: RdfModel, model_prefixes): - assert rdf_model.prefixes(pretty=False) == model_prefixes + def test_namespaces(self, rdf_model_from_dir: RdfModel, model_prefixes): + assert rdf_model_from_dir.prefixes(pretty=False) == model_prefixes class TestTemplates: - def test_request_invalid_type(self, rdf_model: RdfModel): + def test_request_invalid_type(self, rdf_model_from_dir: RdfModel): with pytest.raises(ValueError): - rdf_model._template("Invalid", False) - - @pytest.mark.parametrize("type_, expected", [ - pytest.param("Person", PERSON_TEMPLATE, id="person"), - pytest.param("Employee", EMPLOYEE_TEMPLATE, id="employee"), - pytest.param("Activity", ACTIVITY_TEMPLATE, id="activity"), - pytest.param("Building", BUILDING_TEMPLATE, id="building"), - ]) - def test_create_templates(self, rdf_model: RdfModel, type_, expected): - result = rdf_model._template(type_, False) + rdf_model_from_dir._template("Invalid", False) + + @pytest.mark.parametrize( + "type_, expected", + [ + pytest.param("Person", PERSON_TEMPLATE, id="person"), + pytest.param("Employee", EMPLOYEE_TEMPLATE, id="employee"), + pytest.param("Activity", ACTIVITY_TEMPLATE, id="activity"), + pytest.param("Building", BUILDING_TEMPLATE, id="building"), + ], + ) + def test_create_templates(self, rdf_model_from_dir: RdfModel, type_, expected): + result = rdf_model_from_dir._template(type_, False) assert result == expected - @pytest.mark.parametrize("type_, expected", [ - pytest.param("Activity", ACTIVITY_TEMPLATE_MANDATORY, id="activity"), - pytest.param("Building", BUILDING_TEMPLATE_MANDATORY, id="building"), - ]) - def test_create_templates_only_required(self, rdf_model: RdfModel, type_, expected): - result = rdf_model._template(type_, True) + @pytest.mark.parametrize( + "type_, expected", + [ + pytest.param("Activity", ACTIVITY_TEMPLATE_MANDATORY, id="activity"), + pytest.param("Building", BUILDING_TEMPLATE_MANDATORY, id="building"), + ], + ) + def test_create_templates_only_required( + self, rdf_model_from_dir: RdfModel, type_, expected + ): + result = rdf_model_from_dir._template(type_, True) assert result == expected @@ -94,28 +95,38 @@ def valid_activity_resource(self, activity_json): resource.id = "http://testing/123" return resource - @pytest.mark.parametrize("type_,", TYPES_SCHEMAS_MAP.keys()) - def test_type_to_schema(self, rdf_model: RdfModel, type_): - # FIXME TYPES_SCHEMAS_MAP should be a type to file dictionary - assert rdf_model.schema_id(type_) == TYPES_SCHEMAS_MAP[type_] + @pytest.mark.parametrize("type_,", TYPES_SHAPES_MAP.keys()) + def test_type_to_schema(self, rdf_model_from_dir: RdfModel, type_): + assert rdf_model_from_dir.schema_id(type_) == TYPES_SHAPES_MAP[type_]["schema"] - def test_validate_one(self, rdf_model: RdfModel, valid_activity_resource): - rdf_model.validate(valid_activity_resource, False, type_="Activity") + def test_validate_one(self, rdf_model_from_dir: RdfModel, valid_activity_resource): + rdf_model_from_dir.validate(valid_activity_resource, False, type_="Activity") - def test_validate_one_fail(self, rdf_model: RdfModel, invalid_activity_resource): + def test_validate_one_fail( + self, rdf_model_from_dir: RdfModel, invalid_activity_resource + ): with pytest.raises(ValidationError): - rdf_model._validate_one(invalid_activity_resource, type_="Activity") - - def test_validate_with_schema(self, rdf_model: RdfModel, valid_activity_resource): - rdf_model.validate(valid_activity_resource, False, type_="Activity") - - def test_validate_many(self, rdf_model: RdfModel, valid_activity_resource, - invalid_activity_resource): - resources = [valid_activity_resource, - invalid_activity_resource] - rdf_model.validate(resources, False, type_="Activity") + rdf_model_from_dir._validate_one( + invalid_activity_resource, type_="Activity" + ) + + def test_validate_with_schema( + self, rdf_model_from_dir: RdfModel, valid_activity_resource + ): + rdf_model_from_dir.validate(valid_activity_resource, False, type_="Activity") + + def test_validate_many( + self, + rdf_model_from_dir: RdfModel, + valid_activity_resource, + invalid_activity_resource, + ): + resources = [valid_activity_resource, invalid_activity_resource] + rdf_model_from_dir.validate(resources, False, type_="Activity") assert valid_activity_resource._validated is True assert invalid_activity_resource._validated is False - assert (valid_activity_resource._last_action.operation == - invalid_activity_resource._last_action.operation == - rdf_model._validate_many.__name__) + assert ( + valid_activity_resource._last_action.operation + == invalid_activity_resource._last_action.operation + == rdf_model_from_dir._validate_many.__name__ + ) diff --git a/tests/specializations/models/test_rdf_service.py b/tests/specializations/models/test_rdf_service.py new file mode 100644 index 000000000..acdb9c7b9 --- /dev/null +++ b/tests/specializations/models/test_rdf_service.py @@ -0,0 +1,127 @@ +# +# Blue Brain Nexus Forge is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Blue Brain Nexus Forge is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser +# General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Blue Brain Nexus Forge. If not, see . + + +from pyshacl import Shape +import pytest +from rdflib import SH, Graph, URIRef +from kgforge.specializations.models.rdf.directory_service import DirectoryService +from kgforge.specializations.models.rdf_model import RdfModel +from tests.specializations.models.data import TYPES_SHAPES_MAP + + +def test_get_shape_graph(rdf_model_from_dir: RdfModel): + assert isinstance(rdf_model_from_dir.service, DirectoryService) + for s in TYPES_SHAPES_MAP.values(): + shape, schema_graph = rdf_model_from_dir.service.get_shape_graph( + URIRef(s["shape"]) + ) + assert isinstance(shape, Shape) + assert str(shape.node) == s["shape"] + assert isinstance(schema_graph, Graph) + assert shape.node == URIRef(s["shape"]) + assert (shape.node, None, None) in schema_graph + assert len(schema_graph) > 0 + + for imported in s["imports"]: + imported_named_graph_uriref = ( + rdf_model_from_dir.service.defining_resource_to_named_graph[ + URIRef(imported) + ] + ) + imported_named_graph = ( + rdf_model_from_dir.service.load_shape_graph_from_source( + graph_id=imported_named_graph_uriref, schema_id=imported + ) + ) + for t in imported_named_graph: + assert t in schema_graph + + _, imported_sh_properties = ( + rdf_model_from_dir.service.get_nodeshape_parent_propertyshape( + imported_named_graph, URIRef(imported) + ) + ) + for sh_property in imported_sh_properties: + assert (URIRef(s["shape"]), SH.property, sh_property) in schema_graph + + +def test_get_nodeshape_parent_propertyshape(rdf_model_from_dir): + assert len(rdf_model_from_dir.service._imported) == 0 + for s in TYPES_SHAPES_MAP.values(): + schema_graph = rdf_model_from_dir.service._transitive_load_shape_graph( + rdf_model_from_dir.service._get_named_graph_from_shape(URIRef(s["shape"])), + rdf_model_from_dir.service.shape_to_defining_resource[URIRef(s["shape"])], + ) + sh_nodes, sh_properties = ( + rdf_model_from_dir.service.get_nodeshape_parent_propertyshape( + schema_graph, URIRef(s["shape"]) + ) + ) + assert len(set(sh_properties)) == s["number_of_direct_property_shapes"] + assert sorted(list(sh_nodes)) == sorted(s["parent_node_shapes"]) + ( + triples_to_add, + node_transitive_property_shapes, + triples_to_remove, + rdfcollection_items_to_remove, + ) = rdf_model_from_dir.service._get_transitive_property_shapes_from_nodeshape( + URIRef(s["shape"]), schema_graph + ) + assert len(triples_to_add) == s["number_of_inherited_property_shapes"] + assert ( + len(node_transitive_property_shapes) + == s["number_of_direct_property_shapes"] + + s["number_of_inherited_property_shapes"] + ) + assert len(rdfcollection_items_to_remove) == len(s["parent_node_shapes"]) + assert len(triples_to_remove) == len(s["parent_node_shapes"]) + for parent_node in s["parent_node_shapes"]: + assert ( + URIRef(s["shape"]), + SH.node, + URIRef(parent_node), + ) in triples_to_remove + + +def test_import_transitive_closure(rdf_model_from_dir: RdfModel): + assert len(rdf_model_from_dir.service._imported) == 0 + for s in TYPES_SHAPES_MAP.values(): + _, _ = rdf_model_from_dir.service.get_shape_graph(URIRef(s["shape"])) + assert URIRef(s["schema"]) in rdf_model_from_dir.service._imported + s_imports = [URIRef(imp) for imp in s["imports"]] + if s_imports: + assert set(s_imports).issubset(rdf_model_from_dir.service._imported) + shapes = [val["schema"] for val in TYPES_SHAPES_MAP.values()] + expected_imports = [ + imp for val in TYPES_SHAPES_MAP.values() for imp in val["imports"] + ] + assert len(rdf_model_from_dir.service._imported) == len( + set(shapes + expected_imports) + ) + + +def test_get_unknown_shape_graph_exception(rdf_model_from_dir: RdfModel): + with pytest.raises(Exception): + shape, schema_graph = rdf_model_from_dir.service.get_shape_graph( + URIRef("https://noshape") + ) + + +def test_get_shape_uriref_from_class_fragment(rdf_model_from_dir): + for t, v in TYPES_SHAPES_MAP.items(): + shape_uriref = rdf_model_from_dir.service.get_shape_uriref_from_class_fragment( + t + ) + assert shape_uriref == URIRef(v["shape"]) diff --git a/tests/specializations/stores/test_bluebrain_nexus.py b/tests/specializations/stores/test_bluebrain_nexus.py index fe7be8a2e..d68b9e941 100644 --- a/tests/specializations/stores/test_bluebrain_nexus.py +++ b/tests/specializations/stores/test_bluebrain_nexus.py @@ -32,23 +32,29 @@ from kgforge.core.wrappings.paths import Filter, create_filters_from_dict from kgforge.core.commons.sparql_query_builder import SPARQLQueryBuilder from kgforge.specializations.models import DemoModel -from kgforge.specializations.stores.bluebrain_nexus import ( - BlueBrainNexus, - _create_select_query, -) +from kgforge.specializations.stores.bluebrain_nexus import BlueBrainNexus # FIXME mock Nexus for unittests # TODO To be port to the generic parameterizable test suite for stores in test_stores.py. DKE-135. from kgforge.specializations.stores.nexus import Service from utils import full_path_relative_to_root -MODEL = DemoModel(**{"origin": "directory", - "source": full_path_relative_to_root("tests/data/demo-model/")}) +MODEL = DemoModel( + **{ + "origin": "directory", + "source": full_path_relative_to_root("tests/data/demo-model/"), + } +) BUCKET = "test/kgforge" NEXUS = "https://nexus-instance.org" TOKEN = "token" -NEXUS_PROJECT_CONTEXT = {"base": "http://data.net", "vocab": "http://vocab.net", - "apiMappings": [{'namespace': 'https://neuroshapes.org/dash/', 'prefix': 'datashapes'}]} +NEXUS_PROJECT_CONTEXT = { + "base": "http://data.net", + "vocab": "http://vocab.net", + "apiMappings": [ + {"namespace": "https://neuroshapes.org/dash/", "prefix": "datashapes"} + ], +} VERSIONED_TEMPLATE = "{x.id}?rev={x._store_metadata._rev}" FILE_RESOURCE_MAPPING = full_path_relative_to_root( @@ -81,7 +87,7 @@ def metadata_data_compacted(): "_deprecated": False, "_updatedBy": "http://integration.kfgorge.test", "_rev": 1, - "_constrainedBy":"http://schema.org/Building" + "_constrainedBy": "http://schema.org/Building", } @@ -124,7 +130,9 @@ def registered_person(person, store_metadata_value): @pytest.fixture def production_configuration(): return load_yaml_from_file( - full_path_relative_to_root("./examples/notebooks/use-cases/prod-forge-nexus.yml") + full_path_relative_to_root( + "./examples/notebooks/use-cases/prod-forge-nexus.yml" + ) ) @@ -158,8 +166,8 @@ def nexus_context(): context_document = dict() context_document["@base"] = NEXUS_PROJECT_CONTEXT["base"] context_document["@vocab"] = NEXUS_PROJECT_CONTEXT["vocab"] - for mapping in NEXUS_PROJECT_CONTEXT['apiMappings']: - context_document[mapping['prefix']] = mapping['namespace'] + for mapping in NEXUS_PROJECT_CONTEXT["apiMappings"]: + context_document[mapping["prefix"]] = mapping["namespace"] return Context(context_document) @@ -199,124 +207,211 @@ def test_to_resource(nexus_store, registered_building, building_jsonld, store_co assert str(result._store_metadata) == str(registered_building._store_metadata) -@pytest.mark.parametrize("_constrainedBy, schema_id, expected_params, expected_url_template, expected_url_tag_template", - [ - pytest.param( - ("http://schema.org/Building"), - (None), - ({"rev":1}), - ("/".join((NEXUS,"resources",BUCKET, quote_plus("http://schema.org/Building"),"{}"))), - ("/".join((NEXUS,"resources",BUCKET, quote_plus("http://schema.org/Building"),"{}", "tags"))), - id="tag-constrained-no-schema", - ), - pytest.param( - (None), - ("http://schema.org/Building"), - ({"rev":1}), - ("/".join((NEXUS,"resources",BUCKET, quote_plus("http://schema.org/Building"),"{}"))), - ("/".join((NEXUS,"resources",BUCKET, quote_plus("_"),"{}", "tags"))), - id="tag-no-constrained-schema", - ), - pytest.param( - ("http://schema.org/Building"), - ("http://schema.org/AnotherBuilding"), - ({"rev":1}), - ("/".join((NEXUS,"resources",BUCKET, quote_plus("http://schema.org/AnotherBuilding"),"{}"))), - ("/".join((NEXUS,"resources",BUCKET, quote_plus("http://schema.org/Building"),"{}", "tags"))), - id="tag-constrainedby-schema", - ), - pytest.param( - (None), - (None), - ({"rev":1}), - ("/".join((NEXUS,"resources",BUCKET, quote_plus("_"),"{}"))), - ("/".join((NEXUS,"resources",BUCKET, quote_plus("_"),"{}", "tags"))), - id="tag-no-constrainedby-no-schema", - ), - pytest.param( - (Service.UNCONSTRAINED_SCHEMA), - (None), - ({"rev":1}), - ("/".join((NEXUS,"resources",BUCKET, quote_plus("_"),"{}"))), - ("/".join((NEXUS,"resources",BUCKET, quote_plus("_"),"{}", "tags"))), - id="tag-unconstrained", - ) - ]) -def test_prepare_tag_uri(nexus_store, registered_building, _constrainedBy, schema_id, expected_params, expected_url_template, expected_url_tag_template): - +@pytest.mark.parametrize( + "_constrainedBy, schema_id, expected_params, expected_url_template, expected_url_tag_template", + [ + pytest.param( + ("http://schema.org/Building"), + (None), + ({"rev": 1}), + ( + "/".join( + ( + NEXUS, + "resources", + BUCKET, + quote_plus("http://schema.org/Building"), + "{}", + ) + ) + ), + ( + "/".join( + ( + NEXUS, + "resources", + BUCKET, + quote_plus("http://schema.org/Building"), + "{}", + "tags", + ) + ) + ), + id="tag-constrained-no-schema", + ), + pytest.param( + (None), + ("http://schema.org/Building"), + ({"rev": 1}), + ( + "/".join( + ( + NEXUS, + "resources", + BUCKET, + quote_plus("http://schema.org/Building"), + "{}", + ) + ) + ), + ("/".join((NEXUS, "resources", BUCKET, quote_plus("_"), "{}", "tags"))), + id="tag-no-constrained-schema", + ), + pytest.param( + ("http://schema.org/Building"), + ("http://schema.org/AnotherBuilding"), + ({"rev": 1}), + ( + "/".join( + ( + NEXUS, + "resources", + BUCKET, + quote_plus("http://schema.org/AnotherBuilding"), + "{}", + ) + ) + ), + ( + "/".join( + ( + NEXUS, + "resources", + BUCKET, + quote_plus("http://schema.org/Building"), + "{}", + "tags", + ) + ) + ), + id="tag-constrainedby-schema", + ), + pytest.param( + (None), + (None), + ({"rev": 1}), + ("/".join((NEXUS, "resources", BUCKET, quote_plus("_"), "{}"))), + ("/".join((NEXUS, "resources", BUCKET, quote_plus("_"), "{}", "tags"))), + id="tag-no-constrainedby-no-schema", + ), + pytest.param( + (Service.UNCONSTRAINED_SCHEMA), + (None), + ({"rev": 1}), + ("/".join((NEXUS, "resources", BUCKET, quote_plus("_"), "{}"))), + ("/".join((NEXUS, "resources", BUCKET, quote_plus("_"), "{}", "tags"))), + id="tag-unconstrained", + ), + ], +) +def test_prepare_tag_uri( + nexus_store, + registered_building, + _constrainedBy, + schema_id, + expected_params, + expected_url_template, + expected_url_tag_template, +): + registered_building._store_metadata._constrainedBy = _constrainedBy url, params = nexus_store.service._prepare_uri(registered_building, schema_id) expected_url = expected_url_template.format(quote_plus(registered_building.id)) - + assert params == expected_params assert url == expected_url tagValue = "aTag" url, data, params = nexus_store.service._prepare_tag(registered_building, tagValue) - expected_url_tag = expected_url_tag_template.format(quote_plus(registered_building.id)) - expected_data = {"tag":tagValue, "rev":registered_building._store_metadata._rev} - + expected_url_tag = expected_url_tag_template.format( + quote_plus(registered_building.id) + ) + expected_data = {"tag": tagValue, "rev": registered_building._store_metadata._rev} + assert params == expected_params assert data == expected_data assert url == expected_url_tag -@pytest.mark.parametrize("url,is_file, expected", - [ - pytest.param( - ("myverycoolid123456789"), - (True), - ("https://nexus-instance.org/files/test/kgforge/myverycoolid123456789"), - id="simple-file-id", - ), - pytest.param( - ("http://data.net/myverycoolid123456789"), - (False), - ("https://nexus-instance.org/resources/test/kgforge/_/http%3A%2F%2Fdata.net%2Fmyverycoolid123456789"), - id="simple-resource-id", - ), - pytest.param( - ("http://data.net/07ed2dab-587a-4144-90c7-4cdd252cfa3f"), - (True), - ("https://nexus-instance.org/files/test/kgforge/http%3A%2F%2Fdata.net%2F07ed2dab-587a-4144-90c7-4cdd252cfa3f"), - id="file-id", - ), - pytest.param( - ("https://nexus-instance.org/files/test/kgforge/myverycoolid123456789"), - (True), - ("https://nexus-instance.org/files/test/kgforge/http%3A%2F%2Fdata.net%2Fmyverycoolid123456789"), - id="file-self", - ) - , - pytest.param( - ("https://nexus-instance.org/resources/test/kgforge/datashapes:example/43edd8bf-5dfe-45cd-b6d8-1a604dd6beca"), - (False), - ("https://nexus-instance.org/resources/test/kgforge/https%3A%2F%2Fneuroshapes.org%2Fdash%2Fexample/http%3A%2F%2Fdata.net%2F43edd8bf-5dfe-45cd-b6d8-1a604dd6beca"), - id="resource-schema-self", - ), - pytest.param( - ("https://nexus-instance.org/resources/test/kgforge/_/43edd8bf-5dfe-45cd-b6d8-1a604dd6beca"), - (False), - ("https://nexus-instance.org/resources/test/kgforge/_/http%3A%2F%2Fdata.net%2F43edd8bf-5dfe-45cd-b6d8-1a604dd6beca"), - id="resource-empty-schema-self", - ), - pytest.param( - ("https://nexus-instance.org/files/test/kgforge/http%3A%2F%2Fdata.net%2F632a7644-b07e-4fcd-a537-9162e3444106"), - (True), - ("https://nexus-instance.org/files/test/kgforge/http%3A%2F%2Fdata.net%2F632a7644-b07e-4fcd-a537-9162e3444106"), - id="file-given-expanded-url-encoded-self", - ), - pytest.param( - ("https://nexus-instance.org/resources/test/kgforge/_/http%3A%2F%2Fdata.net%2F43edd8bf-5dfe-45cd-b6d8-1a604dd6beca"), - (False), - ("https://nexus-instance.org/resources/test/kgforge/_/http%3A%2F%2Fdata.net%2F43edd8bf-5dfe-45cd-b6d8-1a604dd6beca"), - id="resource-empty-schema-url-encoded-self", - ) - - - ]) +@pytest.mark.parametrize( + "url,is_file, expected", + [ + pytest.param( + ("myverycoolid123456789"), + (True), + ("https://nexus-instance.org/files/test/kgforge/myverycoolid123456789"), + id="simple-file-id", + ), + pytest.param( + ("http://data.net/myverycoolid123456789"), + (False), + ( + "https://nexus-instance.org/resources/test/kgforge/_/http%3A%2F%2Fdata.net%2Fmyverycoolid123456789" + ), + id="simple-resource-id", + ), + pytest.param( + ("http://data.net/07ed2dab-587a-4144-90c7-4cdd252cfa3f"), + (True), + ( + "https://nexus-instance.org/files/test/kgforge/http%3A%2F%2Fdata.net%2F07ed2dab-587a-4144-90c7-4cdd252cfa3f" + ), + id="file-id", + ), + pytest.param( + ("https://nexus-instance.org/files/test/kgforge/myverycoolid123456789"), + (True), + ( + "https://nexus-instance.org/files/test/kgforge/http%3A%2F%2Fdata.net%2Fmyverycoolid123456789" + ), + id="file-self", + ), + pytest.param( + ( + "https://nexus-instance.org/resources/test/kgforge/datashapes:example/43edd8bf-5dfe-45cd-b6d8-1a604dd6beca" + ), + (False), + ( + "https://nexus-instance.org/resources/test/kgforge/https%3A%2F%2Fneuroshapes.org%2Fdash%2Fexample/http%3A%2F%2Fdata.net%2F43edd8bf-5dfe-45cd-b6d8-1a604dd6beca" + ), + id="resource-schema-self", + ), + pytest.param( + ( + "https://nexus-instance.org/resources/test/kgforge/_/43edd8bf-5dfe-45cd-b6d8-1a604dd6beca" + ), + (False), + ( + "https://nexus-instance.org/resources/test/kgforge/_/http%3A%2F%2Fdata.net%2F43edd8bf-5dfe-45cd-b6d8-1a604dd6beca" + ), + id="resource-empty-schema-self", + ), + pytest.param( + ( + "https://nexus-instance.org/files/test/kgforge/http%3A%2F%2Fdata.net%2F632a7644-b07e-4fcd-a537-9162e3444106" + ), + (True), + ( + "https://nexus-instance.org/files/test/kgforge/http%3A%2F%2Fdata.net%2F632a7644-b07e-4fcd-a537-9162e3444106" + ), + id="file-given-expanded-url-encoded-self", + ), + pytest.param( + ( + "https://nexus-instance.org/resources/test/kgforge/_/http%3A%2F%2Fdata.net%2F43edd8bf-5dfe-45cd-b6d8-1a604dd6beca" + ), + (False), + ( + "https://nexus-instance.org/resources/test/kgforge/_/http%3A%2F%2Fdata.net%2F43edd8bf-5dfe-45cd-b6d8-1a604dd6beca" + ), + id="resource-empty-schema-url-encoded-self", + ), + ], +) def test_rewrite_uri(nexus_store, nexus_context, url, is_file, expected): - uri = nexus_store.rewrite_uri(url, context=nexus_context, is_file=is_file, encoding=None) + uri = nexus_store.rewrite_uri( + url, context=nexus_context, is_file=is_file, encoding=None + ) assert expected == uri @@ -382,8 +477,17 @@ def context(self): id="number-str-not-parsed", ), pytest.param( - (Filter(["createdAt"], "__ge__", "2020-10-20T13:53:22.880Z^^xsd:dateTime"),), - (["createdAt ?v0"], ['FILTER(?v0 >= "2020-10-20T13:53:22.880Z"^^xsd:dateTime)']), + ( + Filter( + ["createdAt"], + "__ge__", + "2020-10-20T13:53:22.880Z^^xsd:dateTime", + ), + ), + ( + ["createdAt ?v0"], + ['FILTER(?v0 >= "2020-10-20T13:53:22.880Z"^^xsd:dateTime)'], + ), id="datetime-ge", ), pytest.param( @@ -464,7 +568,7 @@ def test_filter_to_query_statements(self, context, filters, expected): (Filter(["agent", "name"], "__le__", "Allen Institute"),), id="range_query_str", ) - ] + ], ) def test_filter_to_query_statements_exceptions(self, context, filters): with pytest.raises(ValueError): @@ -473,22 +577,30 @@ def test_filter_to_query_statements_exceptions(self, context, filters): def test_create_select_query(self): statements = f"?id type " vars_ = ["?id", "?project"] - query = _create_select_query(vars_, statements, distinct=False, search_in_graph=True) + query = SPARQLQueryBuilder.create_select_query( + vars_, statements, distinct=False, search_in_graph=True + ) assert ( query == "SELECT ?id ?project WHERE { Graph ?g {?id type }}" ) - query = _create_select_query(vars_, statements, distinct=True, search_in_graph=True) + query = SPARQLQueryBuilder.create_select_query( + vars_, statements, distinct=True, search_in_graph=True + ) assert ( query == "SELECT DISTINCT ?id ?project WHERE { Graph ?g {?id type }}" ) - query = _create_select_query(vars_, statements, distinct=False, search_in_graph=False) + query = SPARQLQueryBuilder.create_select_query( + vars_, statements, distinct=False, search_in_graph=False + ) assert ( query == "SELECT ?id ?project WHERE {?id type }" ) - query = _create_select_query(vars_, statements, distinct=True, search_in_graph=False) + query = SPARQLQueryBuilder.create_select_query( + vars_, statements, distinct=True, search_in_graph=False + ) assert ( query == "SELECT DISTINCT ?id ?project WHERE {?id type }" @@ -573,7 +685,7 @@ def test_create_select_query(self): ( { "type": "Person", - "affiliation/id":"https://www.grid.ac/institutes/grid.5333.6" + "affiliation/id": "https://www.grid.ac/institutes/grid.5333.6", } ), ( @@ -583,11 +695,11 @@ def test_create_select_query(self): operator="__eq__", path=["affiliation", "id"], value="https://www.grid.ac/institutes/grid.5333.6", - ) + ), ] ), id="json_key_sequence_path", - ) + ), ], ) def test_dict_to_filters(self, filters, expected): @@ -602,21 +714,27 @@ def test_dict_to_filters(self, filters, expected): "view, endpoint_type, expected_endpoint, exception", [ ( - Service.DEFAULT_SPARQL_INDEX_FALLBACK, Service.SPARQL_ENDPOINT_TYPE, - "https://nexus-instance.org/views/test/kgforge/https%3A%2F%2Fbluebrain.github.io%2Fnexus%2Fvocabulary%2FdefaultSparqlIndex/sparql", does_not_raise() + Service.DEFAULT_SPARQL_INDEX_FALLBACK, + Service.SPARQL_ENDPOINT_TYPE, + "https://nexus-instance.org/views/test/kgforge/https%3A%2F%2Fbluebrain.github.io%2Fnexus%2Fvocabulary%2FdefaultSparqlIndex/sparql", + does_not_raise(), ), ( - Service.DEFAULT_ES_INDEX_FALLBACK, Service.ELASTIC_ENDPOINT_TYPE, - "https://nexus-instance.org/views/test/kgforge/https%3A%2F%2Fbluebrain.github.io%2Fnexus%2Fvocabulary%2FdefaultElasticSearchIndex/_search", does_not_raise() + Service.DEFAULT_ES_INDEX_FALLBACK, + Service.ELASTIC_ENDPOINT_TYPE, + "https://nexus-instance.org/views/test/kgforge/https%3A%2F%2Fbluebrain.github.io%2Fnexus%2Fvocabulary%2FdefaultElasticSearchIndex/_search", + does_not_raise(), ), - ( - "any_view_id", "unknown_type", None, pytest.raises(ValueError) - ) + ("any_view_id", "unknown_type", None, pytest.raises(ValueError)), ], ) -def test_make_search_endpoint(nexus_store, view, endpoint_type, expected_endpoint, exception): +def test_make_search_endpoint( + nexus_store, view, endpoint_type, expected_endpoint, exception +): with exception: - endpoint = nexus_store.service.make_query_endpoint_self(view, endpoint_type=endpoint_type) + endpoint = nexus_store.service.make_query_endpoint_self( + view, endpoint_type=endpoint_type + ) assert endpoint == expected_endpoint From 6b666f1df4d5505f6abee613c07d07c8810ebb34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mohameth=20Fran=C3=A7ois=20SY?= Date: Wed, 3 Apr 2024 16:19:21 +0200 Subject: [PATCH 22/49] Fixed coupled of issues (#394) * Fixed coupled of issues: * forge.prefixes() was raising pandas.Dataframe error "if using all scalar values, you must pass an index" * fixed forge.types() to properly collect types from rdfsercice.class_to_shape * fixed forge.template() when using an rdf model based on a store service: Unable to generate template:'tuple' object has no attribute 'traverse' --- kgforge/core/archetypes/model.py | 49 ++++++++++++------- .../models/rdf/directory_service.py | 2 + kgforge/specializations/models/rdf_model.py | 3 +- .../models/test_rdf_directory_service.py | 6 +++ 4 files changed, 40 insertions(+), 20 deletions(-) diff --git a/kgforge/core/archetypes/model.py b/kgforge/core/archetypes/model.py index f886a5146..90d84f476 100644 --- a/kgforge/core/archetypes/model.py +++ b/kgforge/core/archetypes/model.py @@ -55,16 +55,17 @@ def prefixes(self, pretty: bool) -> Optional[Dict[str, str]]: prefixes = dict(sorted(self._prefixes().items(), key=lambda item: item[0])) if pretty: print("Used prefixes:") - df = DataFrame(prefixes) - formatters = {x: f"{{:<{df[x].str.len().max()}s}}".format for x in df.columns} + df = DataFrame(prefixes, index=[0]) + formatters = { + x: f"{{:<{df[x].str.len().max()}s}}".format for x in df.columns + } print(df.to_string(header=False, index=False, formatters=formatters)) return None return dict(prefixes) @abstractmethod - def _prefixes(self) -> Dict[str, str]: - ... + def _prefixes(self) -> Dict[str, str]: ... def types(self, pretty: bool) -> Optional[List[str]]: types = sorted(self._types()) @@ -131,10 +132,14 @@ def _sources(self) -> List[str]: ... def mappings(self, source: str, pretty: bool) -> Optional[Dict[str, List[str]]]: - mappings = {k: sorted(v) for k, v in - sorted(self._mappings(source).items(), key=lambda kv: kv[0])} + mappings = { + k: sorted(v) + for k, v in sorted(self._mappings(source).items(), key=lambda kv: kv[0]) + } if pretty: - print("Managed mappings for the data source per entity type and mapping type:") + print( + "Managed mappings for the data source per entity type and mapping type:" + ) for k, v in mappings.items(): print(*[f" - {k}:", *v], sep="\n * ") return None @@ -162,11 +167,22 @@ def schema_id(self, type: str) -> str: # POLICY Should retrieve the schema id of the given type. ... - def validate(self, data: Union[Resource, List[Resource]], - execute_actions_before: bool, type_: str) -> None: + def validate( + self, + data: Union[Resource, List[Resource]], + execute_actions_before: bool, + type_: str, + ) -> None: # Replace None by self._validate_many to switch to optimized bulk validation. - run(self._validate_one, None, data, execute_actions=execute_actions_before, - exception=ValidationError, monitored_status="_validated", type_=type_) + run( + self._validate_one, + None, + data, + execute_actions=execute_actions_before, + exception=ValidationError, + monitored_status="_validated", + type_=type_, + ) @abstractmethod def _validate_many(self, resources: List[Resource], type_: str) -> None: @@ -201,17 +217,14 @@ def _initialize_service(self, source: str, **source_config) -> Any: @staticmethod @abstractmethod - def _service_from_directory(dirpath: Path, context_iri: Optional[str]) -> Any: - ... + def _service_from_directory(dirpath: Path, context_iri: Optional[str]) -> Any: ... @staticmethod @abstractmethod - def _service_from_url(url: str, context_iri: Optional[str]) -> Any: - ... + def _service_from_url(url: str, context_iri: Optional[str]) -> Any: ... @staticmethod @abstractmethod def _service_from_store( - store: 'Store', context_config: Optional[dict], **source_config - ) -> Any: - ... + store: "Store", context_config: Optional[dict], **source_config + ) -> Any: ... diff --git a/kgforge/specializations/models/rdf/directory_service.py b/kgforge/specializations/models/rdf/directory_service.py index 2756c1493..db0ead022 100644 --- a/kgforge/specializations/models/rdf/directory_service.py +++ b/kgforge/specializations/models/rdf/directory_service.py @@ -94,6 +94,8 @@ def load_shape_graph_from_source(self, graph_id: str, schema_id: str) -> Graph: def _load_rdf_files_as_graph(path: Path) -> RDFDataset: + if not path.exists(): + raise ValueError(f"The path {path} does not exist") schema_graphs = RDFDataset() extensions = [".ttl", ".n3", ".json", ".rdf"] for f in path.rglob(os.path.join("*.*")): diff --git a/kgforge/specializations/models/rdf_model.py b/kgforge/specializations/models/rdf_model.py index 9171f08fe..2d1aabf5f 100644 --- a/kgforge/specializations/models/rdf_model.py +++ b/kgforge/specializations/models/rdf_model.py @@ -74,7 +74,7 @@ def _prefixes(self) -> Dict[str, str]: def _types(self) -> List[str]: return [ - self.service.context.to_symbol(cls) + self.service.context.to_symbol(str(cls)) for cls in self.service.class_to_shape.keys() ] @@ -95,7 +95,6 @@ def _template(self, type: str, only_required: bool) -> Dict: try: shape_iri = self.service.get_shape_uriref_from_class_fragment(type) node_properties = self.service.materialize(shape_iri) - print(node_properties) dictionary = parse_attributes(node_properties, only_required, None) return dictionary except Exception as exc: diff --git a/tests/specializations/models/test_rdf_directory_service.py b/tests/specializations/models/test_rdf_directory_service.py index e9a75677f..b93aa2055 100644 --- a/tests/specializations/models/test_rdf_directory_service.py +++ b/tests/specializations/models/test_rdf_directory_service.py @@ -13,6 +13,7 @@ # along with Blue Brain Nexus Forge. If not, see . import os from pathlib import Path +import pytest import rdflib from kgforge.specializations.models import RdfModel from kgforge.specializations.models.rdf.directory_service import ( @@ -39,6 +40,11 @@ def test_load_rdf_files_as_graph(shacl_schemas_file_path): assert len(g) == len(expected_g) +def test_load_not_existing_rdf_files_raise_error(): + with pytest.raises(ValueError): + _load_rdf_files_as_graph(Path("not_existing_shacl_schemas_file_path")) + + def test_build_shapes_map(rdf_model_from_dir: RdfModel): (class_to_shape, shape_to_defining_resource, defining_resource_to_named_graph) = ( rdf_model_from_dir.service._build_shapes_map() From 85d6c6f220717d5c7b27e8a3e4617f3e4dfbbe41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niccol=C3=B2=20Ricardi?= Date: Thu, 11 Apr 2024 16:05:03 +0200 Subject: [PATCH 23/49] improved deflatten function (lower time complexity) --- kgforge/core/conversions/dataframe.py | 42 ++++++++++-------------- tests/core/conversions/test_dataframe.py | 2 +- 2 files changed, 18 insertions(+), 26 deletions(-) diff --git a/kgforge/core/conversions/dataframe.py b/kgforge/core/conversions/dataframe.py index 96dc3101b..8ebe3870d 100644 --- a/kgforge/core/conversions/dataframe.py +++ b/kgforge/core/conversions/dataframe.py @@ -90,28 +90,20 @@ def deflatten(items: List[Tuple[str, Any]], sep: str) -> Dict: Deflatten means that the separator implies nesting of the dictionary. """ - d = {} # dictionary that will be returned - split = [] # those we have already split (we need to keep track) - for n1, t1_ in enumerate(items): - if n1 in split: # already done, continue - continue - k1, v1 = t1_ # all tuples refer to a key-value pair in the DataFrame row - if sep in k1: # avoid issue if int or other class - pre, _ = k1.split(sep, maxsplit=1) # getting prefix ('agent.type' => 'agent') - if pre in d: # we already have d[pre] from the else statement, i.e. it appeared without sep! - raise ValueError(f'Mix of {pre} and {pre}{sep} (e.g. {k1}). Cannot be processed!') - # e.g. both d['agent'] = 'NicoRicardi' and d['agent.name'] = 'NicoRicardi' - pitems = [] # any of type {pre}{sep}{depth2}{sep}{depth3} => {depth2}{sep}{depth3} - for n2, t2_ in enumerate(items): - k2, v2 = t2_ - if k2.startswith(f'{pre}{sep}'): - _, post = k2.split(sep, maxsplit=1) # _ ought to be == pre, but we care mainly about what comes after {pre}{sep} - pitems.append((post, v2)) - split.append(n2) # we do not need to split this item anymore in this specific recursive call - d[pre] = deflatten(pitems, sep) # these items get flattened further in case there is a deeper nesting - else: - if k1 in d: # this key has already been added by the if statement(i.e. from splitting a longer key) - raise ValueError(f'Mix of {pre} and {pre}{sep} (e.g. {k1}). Cannot be processed!') - # e.g. both d['agent'] = 'NicoRicardi' and d['agent.name'] = 'NicoRicardi' - d[k1] = v1 # not nested key-value pair, we just assign - return d # all recursive calls are done, i.e. no nesting left, we can return + deflattened_row = {} + for col_label,v in items: + keys = col_label.split(sep) + + current = deflattened_row + for i, k in enumerate(keys): + if i==len(keys)-1: + try: + current[k] = v + except TypeError: + raise ValueError(f'Mix of nested and not nested for {col_label}. Cannot be processed!') + else: + if k not in current.keys(): + current[k] = {} + current = current[k] + return deflattened_row + diff --git a/tests/core/conversions/test_dataframe.py b/tests/core/conversions/test_dataframe.py index d5e47689f..d2cefb1b0 100644 --- a/tests/core/conversions/test_dataframe.py +++ b/tests/core/conversions/test_dataframe.py @@ -281,4 +281,4 @@ def test_deflatten_raises(): with pytest.raises(ValueError) as exc: deflatten([('a','A'), ('a.p', 'Q')], '.') msg = str(exc.value) - assert 'Mix of' in msg and 'Cannot be processed' + assert 'Mix of' in msg and 'Cannot be processed' in msg From a36f42cbf567d1ccf3a49756b265d65268926ff5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niccol=C3=B2=20Ricardi?= Date: Thu, 11 Apr 2024 17:05:05 +0200 Subject: [PATCH 24/49] linting --- kgforge/core/conversions/dataframe.py | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/kgforge/core/conversions/dataframe.py b/kgforge/core/conversions/dataframe.py index 8ebe3870d..c005afbb9 100644 --- a/kgforge/core/conversions/dataframe.py +++ b/kgforge/core/conversions/dataframe.py @@ -60,7 +60,7 @@ def _from_dataframe(row: Series, na: Union[Any, List[Any]], nesting: str) -> Res new_na = row.replace(na, np.nan) no_na = new_na.dropna() items = list(no_na.items()) - if not all([isinstance(i[0], str) for i in items]): + if not all(isinstance(i[0], str) for i in items): raise ValueError('Non-string column name!') data = deflatten(items, nesting) return from_json(data, None) @@ -91,19 +91,18 @@ def deflatten(items: List[Tuple[str, Any]], sep: str) -> Dict: """ deflattened_row = {} - for col_label,v in items: + for col_label, v in items: keys = col_label.split(sep) current = deflattened_row for i, k in enumerate(keys): - if i==len(keys)-1: + if i == len(keys) - 1: try: current[k] = v - except TypeError: - raise ValueError(f'Mix of nested and not nested for {col_label}. Cannot be processed!') + except TypeError as exc: + raise ValueError(f'Mix of nested and not nested for {col_label}. Cannot be processed!') from exc else: - if k not in current.keys(): + if k not in current: current[k] = {} current = current[k] return deflattened_row - From baf26f0c85391ff34d10aa40e0f0c6ca76e08aa1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mohameth=20Fran=C3=A7ois=20SY?= Date: Fri, 19 Apr 2024 15:49:41 +0200 Subject: [PATCH 25/49] Validation with ontology (#396) * Added support for inference when using the RdfModel: * support for importing ontologies from schemas using owl:imports * use forge.validate(resource, inference="inference_value", type_='AType') with inference_value as in https://github.com/RDFLib/pySHACL/blob/v0.25.0/pyshacl/validate.py#L81. inference_value="rdfs" seems to be enough to extend the resource with the transitive closures of type subClassOf and/or property subPropertyOf relations as per the RDFS entailment rules (https://www.w3.org/TR/rdf-mt/). * Validation now fails when a type not in the resource is provided as value of the type_ argument unless inference is enabled (with inference='rdfs' for example) and the resource type is a subClassOf of type_ --- kgforge/core/archetypes/model.py | 8 +- kgforge/core/commons/sparql_query_builder.py | 12 + kgforge/core/forge.py | 30 +- kgforge/specializations/models/demo_model.py | 20 +- .../models/rdf/directory_service.py | 25 +- kgforge/specializations/models/rdf/service.py | 293 +- .../models/rdf/store_service.py | 33 +- kgforge/specializations/models/rdf_model.py | 14 +- tests/conftest.py | 2 +- tests/core/commons/test_context.py | 2 +- tests/core/conversions/test_rdf.py | 30 +- .../shacl-model/commons/schemaorg-v26.0.json | 78422 ++++++++++++++++ tests/data/shacl-model/commons/shapes-1.json | 4 +- tests/data/shacl-model/commons/shapes-2.json | 2 +- tests/data/shacl-model/commons/shapes-3.json | 2 +- tests/data/shacl-model/commons/shapes-4.json | 2 +- tests/data/shacl-model/context.json | 9 +- tests/specializations/models/data.py | 156 +- .../specializations/models/test_demo_model.py | 37 +- .../models/test_rdf_directory_service.py | 31 +- .../specializations/models/test_rdf_model.py | 54 +- .../models/test_rdf_service.py | 71 +- 22 files changed, 79015 insertions(+), 244 deletions(-) create mode 100644 tests/data/shacl-model/commons/schemaorg-v26.0.json diff --git a/kgforge/core/archetypes/model.py b/kgforge/core/archetypes/model.py index 90d84f476..8c6a51f7d 100644 --- a/kgforge/core/archetypes/model.py +++ b/kgforge/core/archetypes/model.py @@ -172,6 +172,7 @@ def validate( data: Union[Resource, List[Resource]], execute_actions_before: bool, type_: str, + inference: Optional[str] = None, ) -> None: # Replace None by self._validate_many to switch to optimized bulk validation. run( @@ -182,16 +183,19 @@ def validate( exception=ValidationError, monitored_status="_validated", type_=type_, + inference=inference, ) @abstractmethod - def _validate_many(self, resources: List[Resource], type_: str) -> None: + def _validate_many( + self, resources: List[Resource], type_: str, inference: str + ) -> None: # Bulk validation could be optimized by overriding this method in the specialization. # POLICY Should reproduce self._validate_one() and execution._run_one() behaviours. ... @abstractmethod - def _validate_one(self, resource: Resource, type_: str) -> None: + def _validate_one(self, resource: Resource, type_: str, inference: str) -> None: # POLICY Should notify of failures with exception ValidationError including a message. ... diff --git a/kgforge/core/commons/sparql_query_builder.py b/kgforge/core/commons/sparql_query_builder.py index 35137f13d..626b2449e 100644 --- a/kgforge/core/commons/sparql_query_builder.py +++ b/kgforge/core/commons/sparql_query_builder.py @@ -484,3 +484,15 @@ def build_shacl_query( prefixes=context.prefixes, vocab=context.vocab, ) + + +def build_ontology_query() -> str: + query = """ + PREFIX rdfs: + PREFIX sh: + SELECT DISTINCT ?ont ?g WHERE { + Graph ?g { + ?ont a owl:Ontology + } + }""" + return query diff --git a/kgforge/core/forge.py b/kgforge/core/forge.py index 7b56913da..02d8cfdf9 100644 --- a/kgforge/core/forge.py +++ b/kgforge/core/forge.py @@ -240,11 +240,14 @@ def __init__(self, configuration: Union[str, Dict], **kwargs) -> None: # Same model, different config store_model = import_class(store_model_name, "models") store_config["model"] = store_model(**store_model_config) + store_config["model"] = store_model(**store_model_config) else: # Same model, same config store_config["model"] = self._model + store_config["model"] = self._model else: raise ValueError(f"Missing model configuration for store {store_name}") + raise ValueError(f"Missing model configuration for store {store_name}") store = import_class(store_name, "stores") self._store: Store = store(**store_config) store_config.update(name=store_name) @@ -325,6 +328,7 @@ def validate( data: Union[Resource, List[Resource]], execute_actions_before: bool = False, type_: str = None, + inference: Optional[str] = None, ) -> None: """ Check if resources conform to their corresponding schemas. This method will try to infer the schema of a resource from its type. @@ -335,6 +339,9 @@ def validate( :param data: a resource or a list of resources to validate :param execute_actions_before: whether to execute a LazyAction value of one of a resource property (True) or not (False) prior to validation :param type_: the type to validate the data against it. If None, the validation function will look for a type attribute in the Resource + :param inference: an inference strategy to use during validation to extend the resource. For example 'rdfs' is an RDF inference strategy (when using RdfModel with pySHACL) + able to extend the resource with the transitive closures of type subClassOf and/or property subPropertyOf relations as per the + RDFS entailment rules (https://www.w3.org/TR/rdf-mt/). In this example 'owlrl' or 'rdfsowlrl' are also possible values while no inference will be performed with None . :return: None """ self._model.validate(data, execute_actions_before, type_=type_) @@ -479,6 +486,7 @@ def resolve( limit, threshold, self, + self, ) else: raise ResolvingError("no resolvers have been configured") @@ -486,6 +494,14 @@ def resolve( # Formatting User Interface. @catch + def format( + self, + what: str = None, + *args, + formatter: Union[Formatter, str] = Formatter.STR, + uri: str = None, + **kwargs, + ) -> str: def format( self, what: str = None, @@ -511,6 +527,7 @@ def format( try: formatter = ( formatter if isinstance(formatter, Formatter) else Formatter[formatter] + formatter if isinstance(formatter, Formatter) else Formatter[formatter] ) except Exception as e: raise AttributeError( @@ -566,6 +583,7 @@ def mappings( return self._model.mappings(source, pretty) @catch + def mapping(self, entity: str, source: str, type: Type[Mapping] = None) -> Mapping: def mapping(self, entity: str, source: str, type: Type[Mapping] = None) -> Mapping: """ Return a Mapping object of type 'type' for a resource type 'entity' and a source. @@ -635,6 +653,7 @@ def retrieve( version: Optional[Union[int, str]] = None, cross_bucket: bool = False, **params, + **params, ) -> Resource: """ Retrieve a resource by its identifier from the configured store and possibly at a given version. @@ -648,6 +667,9 @@ def retrieve( return self._store.retrieve( id_=id, version=version, cross_bucket=cross_bucket, **params ) + return self._store.retrieve( + id_=id, version=version, cross_bucket=cross_bucket, **params + ) @catch def paths(self, type: str) -> PathsWrapper: @@ -692,6 +714,7 @@ def sparql( limit: Optional[int] = None, offset: Optional[int] = None, **params, + **params, ) -> List[Resource]: """ Search for resources using a SPARQL query. See SPARQL docs: https://www.w3.org/TR/sparql11-query. @@ -720,9 +743,8 @@ def elastic( debug: bool = False, limit: Optional[int] = None, offset: Optional[int] = None, - source: Optional[str] = None, **params, - ) -> List[Resource]: + ) -> Union[List[Resource], Resource, List[Dict], Dict]: """ Search for resources using an ElasticSearch DSL query. See ElasticSearch DSL docs: https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl.html. @@ -750,7 +772,6 @@ def download( overwrite: bool = False, cross_bucket: bool = False, content_type: str = None, - source: Optional[str] = None, ) -> None: """ Download files attached to a resource or a list of resources. @@ -878,6 +899,7 @@ def as_jsonld( form: str = Form.COMPACTED.value, store_metadata: bool = False, **params, + **params, ) -> Union[Dict, List[Dict]]: """ Convert a resource or a list of resources to JSON-LD. @@ -896,6 +918,7 @@ def as_jsonld( self._store.metadata_context, self._model.resolve_context, **params, + **params, ) @catch @@ -1102,6 +1125,7 @@ def prepare_resolver(config: Dict, store_config: Dict) -> Tuple[str, Resolver]: "source", "name", ["endpoint", "token", "bucket", "model", "searchendpoints", "vocabulary"], + ["endpoint", "token", "bucket", "model", "searchendpoints", "vocabulary"], ) resolver_name = config.pop("resolver") resolver = import_class(resolver_name, "resolvers") diff --git a/kgforge/specializations/models/demo_model.py b/kgforge/specializations/models/demo_model.py index 71046878f..7b0190ccc 100644 --- a/kgforge/specializations/models/demo_model.py +++ b/kgforge/specializations/models/demo_model.py @@ -38,19 +38,25 @@ def _types(self) -> List[str]: return [x["label"] for x in self.service.vocabulary["Class"]] def context(self) -> Context: - ctx = {x["label"]: x["id"] for k, v in self.service.vocabulary.items() for x in v} + ctx = { + x["label"]: x["id"] for k, v in self.service.vocabulary.items() for x in v + } return Context({"@context": ctx}) # Templates. def _template(self, type: str, only_required: bool) -> Dict: # TODO DKE-148. - print(" DemoModel does not distinguish values and constraints in templates for now.") + print( + " DemoModel does not distinguish values and constraints in templates for now." + ) # TODO DKE-148. print(" DemoModel does not automatically include nested schemas for now.") if only_required: # TODO DKE-148. - print(" DemoModel does not support keeping only required properties for now.") + print( + " DemoModel does not support keeping only required properties for now." + ) type_expanded = self.service.expand(type) schema = self.service.schema(type_expanded) return self.service.compact(schema) @@ -81,7 +87,7 @@ def mapping(self, entity: str, source: str, type: Type[Mapping]) -> Mapping: # Validation. - def _validate_one(self, resource: Resource, type_: str) -> None: + def _validate_one(self, resource: Resource, type_: str, inference: str) -> None: """ Validates the model against a given type provided by type_ parameter. If type_ is None then it looks for type attribute in resource. @@ -105,7 +111,7 @@ def _service_from_url(url: str, context_iri: Optional[str]) -> Any: @staticmethod def _service_from_store( - store: Store, context_config: Optional[dict], **source_config + store: Store, context_config: Optional[dict], **source_config ) -> Any: raise not_supported() @@ -118,7 +124,9 @@ def _generate_context(self) -> Dict: def schema_id(self, type: str) -> str: raise not_supported() - def _validate_many(self, resources: List[Resource], type_: str) -> None: + def _validate_many( + self, resources: List[Resource], type_: str, inference: str + ) -> None: raise not_supported() diff --git a/kgforge/specializations/models/rdf/directory_service.py b/kgforge/specializations/models/rdf/directory_service.py index db0ead022..392876c9e 100644 --- a/kgforge/specializations/models/rdf/directory_service.py +++ b/kgforge/specializations/models/rdf/directory_service.py @@ -15,16 +15,18 @@ from pathlib import Path from typing import Dict, Tuple -from pyshacl import Shape, validate from rdflib import Dataset as RDFDataset from rdflib import OWL, Graph, URIRef from rdflib.util import guess_format from kgforge.core.commons.context import Context -from kgforge.core.commons.sparql_query_builder import build_shacl_query +from kgforge.core.commons.sparql_query_builder import ( + build_ontology_query, + build_shacl_query, +) from kgforge.specializations.models.rdf.node_properties import NodeProperties -from kgforge.specializations.models.rdf.service import RdfService, ShapesGraphWrapper +from kgforge.specializations.models.rdf.service import RdfService class DirectoryService(RdfService): @@ -44,11 +46,6 @@ def materialize(self, iri: URIRef) -> NodeProperties: attrs["properties"] = props return NodeProperties(**attrs) - def _validate( - self, iri: str, data_graph: Graph, shape: Shape, shacl_graph: Graph - ) -> Tuple[bool, Graph, str]: - return validate(data_graph, shacl_graph=shacl_graph) - def resolve_context(self, iri: str) -> Dict: if iri in self._context_cache: return self._context_cache[iri] @@ -89,7 +86,17 @@ def _build_shapes_map(self) -> Tuple[Dict, Dict, Dict]: defining_resource_to_named_graph, ) - def load_shape_graph_from_source(self, graph_id: str, schema_id: str) -> Graph: + def _build_ontology_map(self) -> Dict: + query = build_ontology_query() + res = self._dataset_graph.query(query) + ont_to_named_graph = {} + for row in res: + ont_to_named_graph[URIRef(self.context.expand(row["ont"]))] = URIRef( + row["g"] + ) + return ont_to_named_graph + + def load_resource_graph_from_source(self, graph_id: str, schema_id: str) -> Graph: return self._dataset_graph.graph(URIRef(graph_id)) diff --git a/kgforge/specializations/models/rdf/service.py b/kgforge/specializations/models/rdf/service.py index 779f2325f..e73530117 100644 --- a/kgforge/specializations/models/rdf/service.py +++ b/kgforge/specializations/models/rdf/service.py @@ -16,8 +16,11 @@ from abc import abstractmethod from pyshacl.constraints import ALL_CONSTRAINT_PARAMETERS from pyshacl.shape import Shape +from pyshacl.validate import Validator, validate +from pyshacl.consts import SH_Violation +from pyshacl.constraints.constraint_component import CustomConstraintComponentFactory from pyshacl.shapes_graph import ShapesGraph -from rdflib import OWL, SH, Graph, Namespace, URIRef, RDF, XSD +from rdflib import OWL, SH, BNode, Graph, Namespace, URIRef, RDF, XSD from rdflib.paths import ZeroOrMore from rdflib import Dataset as RDFDataset from rdflib.collection import Collection as RDFCollection @@ -161,7 +164,9 @@ def __init__(self, graph: RDFDataset, context_iri: Optional[str] = None) -> None self.shape_to_defining_resource, self.defining_resource_to_named_graph, ) = self._build_shapes_map() + self.ont_to_named_graph = self._build_ontology_map() self._imported = [] + self._defining_resource_to_imported_ontology = {} @abstractmethod def schema_source_id(self, shape_uri: str) -> str: @@ -188,7 +193,7 @@ def materialize(self, iri: URIRef) -> NodeProperties: """ raise NotImplementedError() - def validate(self, resource: Resource, type_: str): + def validate(self, resource: Resource, type_: str, inference: str): try: if not resource.get_type() and not type_: raise ValueError( @@ -206,14 +211,57 @@ def validate(self, resource: Resource, type_: str): ) from exc shape_iri = self.get_shape_uriref_from_class_fragment(type_to_validate) data_graph = as_graph(resource, False, self.context, None, None) - shape, shacl_graph = self.get_shape_graph(shape_iri) - return self._validate(shape_iri, data_graph, shape, shacl_graph) + shape, shacl_graph, ont_graph = self.get_shape_graph(shape_iri) + conforms, report_graph, report_text = self._validate( + shape_iri, data_graph, shape, shacl_graph, inference, ont_graph + ) + # when no schema target was found in the data (i.e no data was selected for validation) + # conforms is currently set to True by pyShacl. Here it is set to False so that + # the validation fails when type_to_validate is not present in the data + if conforms and len(shape.focus_nodes(data_graph)) == 0: + conforms = False + # Create a dedicated validation report + result_desc = ( + f"No data matching the targets (i.e. what the schema can validate) of {type_to_validate}'s schema" + + f" were found in the provided resource. The {type_to_validate} schema can validate the following types: {list(shape.target_classes())}." + + f" Consider providing a resource with type in {list(shape.target_classes())}." + ) + r_node = BNode() + result = ( + result_desc, + r_node, + [ + (r_node, RDF.type, SH.ValidationResult), + (r_node, SH.sourceShape, (shape.sg, shape.node)), + ( + r_node, + SH.resultSeverity, + SH.Warning, + ), # what is the severity here ? + ], + ) + report_graph, report_text = Validator.create_validation_report( + sg=shape.sg, conforms=conforms, results=[result] + ) + return conforms, report_graph, report_text - @abstractmethod def _validate( - self, iri: str, data_graph: Graph, shape: Shape, shacl_graph: Graph + self, + iri: str, + data_graph: Graph, + shape: Shape, + shacl_graph: Graph, + inference: str, + ont_graph: Graph = None, ) -> Tuple[bool, Graph, str]: - raise NotImplementedError() + inplace = inference and inference != "none" + return validate( + data_graph=data_graph, + shacl_graph=shacl_graph, + ont_graph=ont_graph, + inference=inference, + inplace=inplace, + ) @abstractmethod def resolve_context(self, iri: str) -> Dict: @@ -236,7 +284,15 @@ def _build_shapes_map(self) -> Tuple[Dict, Dict, Dict]: raise NotImplementedError() @abstractmethod - def load_shape_graph_from_source(self, graph_id: str, schema_id: str) -> Graph: + def _build_ontology_map(self) -> Dict: + """Index the loaded ontologies + Returns: + * a Dict of URIRef to ontology named graph + """ + raise NotImplementedError() + + @abstractmethod + def load_resource_graph_from_source(self, graph_id: str, schema_id: str) -> Graph: """Loads into graph_id the node shapes defined in shema_id from the source Args: @@ -347,47 +403,95 @@ def traverse_properties(properties) -> Tuple[Dict, Dict]: return {"@context": context} if len(context) > 0 else None - def _transitive_load_shape_graph(self, graph_uriref: URIRef, schema_uriref: URIRef): - """Loads into the graph identified by graph_uriref: - * the node shapes defined in the schema identified by schema_uriref - * the transitive closure of the owl.imports property of the schema schema_uriref - - Loaded schemas are added to self._imported to avoid loading them a second time. + def _process_imported_resource( + self, + imported_resource_uriref, + resource_to_named_graph_uriref, + collect_imported_ontology: bool, + ): + imported_graph_id = resource_to_named_graph_uriref[imported_resource_uriref] + if imported_resource_uriref not in self._imported: + imported_resource_graph, imported_ont_graph = ( + self._transitive_load_resource_graph( + imported_graph_id, imported_resource_uriref + ) + ) + else: + imported_resource_graph = self._dataset_graph.graph(imported_graph_id) + imported_ont_graph = Graph() + if collect_imported_ontology: + imported_ont_graph = self._build_imported_ontology_graph( + imported_resource_uriref + ) + return imported_resource_graph, imported_ont_graph + def _transitive_load_resource_graph( + self, graph_uriref: URIRef, resource_uriref: URIRef + ) -> Tuple[Graph, Graph]: + """Loads into the graph identified by graph_uriref: + * the node shapes defined in the resource identified by resource_uriref + * the transitive closure of the owl.imports property (only schema) of the resource resource_uriref + Loads imported (by resource_uriref) ontologies in a separate rdf graph ont_graph. + Loaded schemas and ontologies are cached in self._imported. Args: - node_shape_uriref: the URI of a node shape graph_uriref: A named graph URIRef containing schema_uriref - schema_uriref: A URIRef of the schema - import_transitive_closure: Whether (True) to add node_shape_uriref's owl:import transitive closure in node_shape_uriref's graph or not (False) - link_property_shapes_from_ancestors: Whether (True) to directly link to node_shape_uriref recursively collected property shapes of its ancestors or not (False) + resource_uriref: the URI of a node shape + Returns: + A Tuple of 2 rdflib.Graph(): + * schema graph + * imported ontology graph """ - schema_graph = self.load_shape_graph_from_source(graph_uriref, schema_uriref) - # if import_transitive_closure: - for imported in schema_graph.objects(schema_uriref, OWL.imports): - imported_schema_uriref = URIRef(self.context.expand(imported)) - try: - imported_graph_id = self.defining_resource_to_named_graph[ - imported_schema_uriref - ] - if imported_schema_uriref not in self._imported: - imported_schema_graph = self._transitive_load_shape_graph( - imported_graph_id, imported_schema_uriref + resource_graph = self.load_resource_graph_from_source( + graph_uriref, resource_uriref + ) + ont_graph = Graph() + transitive_imported_ontologies = [] + locally_imported_ontologies = [] + for imported in resource_graph.objects(resource_uriref, OWL.imports): + imported_resource_uriref = URIRef(self.context.expand(imported)) + imported_resource_graph = Graph() + if imported_resource_uriref in self.defining_resource_to_named_graph: + imported_resource_graph, imported_ont_graph = ( + self._process_imported_resource( + imported_resource_uriref, + self.defining_resource_to_named_graph, + collect_imported_ontology=True, ) - else: - imported_schema_graph = self._dataset_graph.graph(imported_graph_id) + ) + transitive_imported_ontologies += ( + self._defining_resource_to_imported_ontology.get( + imported_resource_uriref, [] + ) + ) + elif imported_resource_uriref in self.ont_to_named_graph: + imported_ont_graph, _ = self._process_imported_resource( + imported_resource_uriref, + self.ont_to_named_graph, + collect_imported_ontology=False, + ) + locally_imported_ontologies.append(imported_resource_uriref) + else: + raise ValueError( + f"Imported resource {imported_resource_uriref} is not loaded as schema or ontology" + ) + try: # set operation to keep blank nodes unchanged as all the graphs belong to the same overall RDF Dataset # seeAlso: https://rdflib.readthedocs.io/en/stable/merging.html - schema_graph += imported_schema_graph - except KeyError as ke: - raise ValueError( - f"Imported schema {imported_schema_uriref} is not loaded and indexed: {str(ke)}" - ) from ke + ont_graph += imported_ont_graph + resource_graph += imported_resource_graph except ParserError as pe: raise ValueError( - f"Failed to parse the rdf graph of the imported schema {imported_schema_uriref}: {str(pe)}" + f"Failed to parse the rdf graph of the imported resource {imported_resource_uriref}: {str(pe)}" ) from pe - self._imported.append(schema_uriref) - return schema_graph + + self._imported.append(resource_uriref) + if transitive_imported_ontologies or locally_imported_ontologies: + if resource_uriref not in self._defining_resource_to_imported_ontology: + self._defining_resource_to_imported_ontology[resource_uriref] = [] + self._defining_resource_to_imported_ontology[resource_uriref].extend( + transitive_imported_ontologies + locally_imported_ontologies + ) + return resource_graph, ont_graph def _get_transitive_property_shapes_from_nodeshape( self, node_shape_uriref: URIRef, schema_graph: Graph @@ -481,55 +585,76 @@ def get_nodeshape_parent_propertyshape(self, graph, node_shape_uriref): ) return sh_nodes, sh_properties - def get_shape_graph(self, node_shape_uriref: URIRef) -> Tuple[Shape, Graph]: + def _import_shape(self, node_shape_uriref: URIRef): try: - shape = self.get_shape_graph_wrapper().lookup_shape_from_node( - node_shape_uriref + shape_graph, ont_graph = self._transitive_load_resource_graph( + self._get_named_graph_from_shape(node_shape_uriref), + self.shape_to_defining_resource[node_shape_uriref], ) - if ( - node_shape_uriref in self.shape_to_defining_resource - and self.shape_to_defining_resource[node_shape_uriref] in self._imported - ): - shape_graph = self._dataset_graph.graph( - self._get_named_graph_from_shape(node_shape_uriref) - ) - else: - raise ValueError() - except Exception: - try: - shape_graph = self._transitive_load_shape_graph( - self._get_named_graph_from_shape(node_shape_uriref), - self.shape_to_defining_resource[node_shape_uriref], - ) - # Address (though not for all node shape inheritance cases) limitation of the length - # of sh:node transitive path (https://github.com/RDFLib/pySHACL/blob/master/pyshacl/shape.py#L468). - ( - triples_to_add, - _, - triples_to_remove, - rdfcollection_items_to_remove, - ) = self._get_transitive_property_shapes_from_nodeshape( + # Address (though not for all node shape inheritance cases) limitation of the length + # of sh:node transitive path (https://github.com/RDFLib/pySHACL/blob/master/pyshacl/shape.py#L468). + (triples_to_add, _, triples_to_remove, rdfcollection_items_to_remove) = ( + self._get_transitive_property_shapes_from_nodeshape( node_shape_uriref, shape_graph ) - for triple_to_add in triples_to_add: - shape_graph.add(triple_to_add) - for triple_to_remove in triples_to_remove: - shape_graph.remove(triple_to_remove) - for ( - rdfcollection, - rdfcollection_item_index, - ) in rdfcollection_items_to_remove: - del rdfcollection[rdfcollection_item_index] - # reloads the shapes graph - self._init_shape_graph_wrapper() - shape = self.get_shape_graph_wrapper().lookup_shape_from_node( - node_shape_uriref - ) - except Exception as e: - raise Exception( - f"Failed to get the shape '{node_shape_uriref}': {str(e)}" - ) from e - return shape, shape_graph + ) + for triple_to_add in triples_to_add: + shape_graph.add(triple_to_add) + for triple_to_remove in triples_to_remove: + shape_graph.remove(triple_to_remove) + for ( + rdfcollection, + rdfcollection_item_index, + ) in rdfcollection_items_to_remove: + del rdfcollection[rdfcollection_item_index] + # reloads the shapes graph + self._init_shape_graph_wrapper() + shape = self.get_shape_graph_wrapper().lookup_shape_from_node( + node_shape_uriref + ) + return shape, shape_graph, ont_graph + except Exception as e: + raise Exception( + f"Failed to import the shape '{node_shape_uriref}': {str(e)}" + ) from e + + def get_shape_graph(self, node_shape_uriref: URIRef) -> Tuple[Shape, Graph, Graph]: + if node_shape_uriref not in self.shape_to_defining_resource: + raise ValueError(f"Unknown shape '{node_shape_uriref}'") + try: + shape = self.get_shape_graph_wrapper().lookup_shape_from_node( + node_shape_uriref + ) + except ValueError: + return self._import_shape(node_shape_uriref) + if self.shape_to_defining_resource[node_shape_uriref] in self._imported: + defining_resource = self.shape_to_defining_resource[node_shape_uriref] + shape_graph = self._dataset_graph.graph( + self._get_named_graph_from_shape(node_shape_uriref) + ) + ont_graph = self._build_imported_ontology_graph(defining_resource) + else: + return self._import_shape(node_shape_uriref) + + return shape, shape_graph, ont_graph + + def _build_imported_ontology_graph(self, resurce_uriref): + ont_graph = Graph() + if ( + resurce_uriref in self._defining_resource_to_imported_ontology + ): # has imported ontology + imported_ont_urirefs = self._defining_resource_to_imported_ontology[ + resurce_uriref + ] + for imported_ont_uriref in imported_ont_urirefs: + if imported_ont_uriref in self.ont_to_named_graph: + ont_named_graph = self.ont_to_named_graph[imported_ont_uriref] + ont_graph += self._dataset_graph.graph(ont_named_graph) + else: + raise ValueError( + f"Unknown ontology '{imported_ont_uriref}' imported in schema '{resurce_uriref}'" + ) + return ont_graph def get_shape_uriref_from_class_fragment(self, fragment): try: diff --git a/kgforge/specializations/models/rdf/store_service.py b/kgforge/specializations/models/rdf/store_service.py index 1764b2621..710763cad 100644 --- a/kgforge/specializations/models/rdf/store_service.py +++ b/kgforge/specializations/models/rdf/store_service.py @@ -15,12 +15,14 @@ import json -from pyshacl import Shape, validate from rdflib import URIRef, Namespace, Graph from rdflib import Dataset as RDFDataset from kgforge.core.commons.exceptions import RetrievalError -from kgforge.core.commons.sparql_query_builder import build_shacl_query +from kgforge.core.commons.sparql_query_builder import ( + build_ontology_query, + build_shacl_query, +) from kgforge.core.conversions.rdf import as_jsonld from kgforge.core.archetypes.store import Store from kgforge.specializations.models.rdf.node_properties import NodeProperties @@ -51,18 +53,13 @@ def schema_source_id(self, shape_uri: str) -> str: return str(self.shape_to_defining_resource[URIRef(shape_uri)]) def materialize(self, iri: URIRef) -> NodeProperties: - shape = self.get_shape_graph(iri) + shape, _, _ = self.get_shape_graph(iri) predecessors = set() props, attrs = shape.traverse(predecessors) if props: attrs["properties"] = props return NodeProperties(**attrs) - def _validate( - self, iri: str, data_graph: Graph, shape: Shape, shacl_graph: Graph - ) -> Tuple[bool, Graph, str]: - return validate(data_graph, shacl_graph=shacl_graph) - def resolve_context(self, iri: str) -> Dict: if iri in self._context_cache: return self._context_cache[iri] @@ -116,6 +113,24 @@ def _build_shapes_map(self) -> Tuple[Dict, Dict, Dict]: defining_resource_to_named_graph, ) + def _build_ontology_map(self) -> Dict: + query = build_ontology_query() + limit = 1000 + offset = 0 + count = limit + ont_to_named_graph = {} + while count == limit: + resources = self.context_store.sparql( + query, debug=False, limit=limit, offset=offset + ) + for r in resources: + ont_uri = self.context.expand(r.ont) + ont_uriref = URIRef(ont_uri) + ont_to_named_graph[ont_uriref] = URIRef(ont_uri + "/graph") + count = len(resources) + offset += limit + return ont_to_named_graph + def recursive_resolve(self, context: Union[Dict, List, str]) -> Dict: document = {} if isinstance(context, list): @@ -146,7 +161,7 @@ def recursive_resolve(self, context: Union[Dict, List, str]) -> Dict: document.update(context) return document - def load_shape_graph_from_source(self, graph_id: str, schema_id: str) -> Graph: + def load_resource_graph_from_source(self, graph_id: str, schema_id: str) -> Graph: try: schema_resource = self.context_store.retrieve( schema_id, version=None, cross_bucket=False diff --git a/kgforge/specializations/models/rdf_model.py b/kgforge/specializations/models/rdf_model.py index 2d1aabf5f..5cd8388ab 100644 --- a/kgforge/specializations/models/rdf_model.py +++ b/kgforge/specializations/models/rdf_model.py @@ -114,6 +114,7 @@ def validate( data: Union[Resource, List[Resource]], execute_actions_before: bool, type_: str, + inference: str = None, ) -> None: run( self._validate_one, @@ -123,11 +124,16 @@ def validate( exception=ValidationError, monitored_status="_validated", type_=type_, + inference=inference, ) - def _validate_many(self, resources: List[Resource], type_: str) -> None: + def _validate_many( + self, resources: List[Resource], type_: str, inference: str + ) -> None: for resource in resources: - conforms, graph, _ = self.service.validate(resource, type_=type_) + conforms, graph, _ = self.service.validate( + resource, type_=type_, inference=inference + ) if conforms: resource._validated = True action = Action(self._validate_many.__name__, conforms, None) @@ -144,8 +150,8 @@ def _validate_many(self, resources: List[Resource], type_: str) -> None: resource._last_action = action - def _validate_one(self, resource: Resource, type_: str) -> None: - conforms, _, report = self.service.validate(resource, type_) + def _validate_one(self, resource: Resource, type_: str, inference: str) -> None: + conforms, _, report = self.service.validate(resource, type_, inference) if conforms is False: raise ValidationError("\n" + report) diff --git a/tests/conftest.py b/tests/conftest.py index 5ff1b33fe..ddb5a0754 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -325,7 +325,7 @@ def model_prefixes(): return { "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "prov": "http://www.w3.org/ns/prov#", - "schema": "http://schema.org/", + "schema": "https://schema.org/", "rdfs": "http://www.w3.org/2000/01/rdf-schema#", "skos": "http://www.w3.org/2004/02/skos/core#", "nsg": "https://neuroshapes.org/", diff --git a/tests/core/commons/test_context.py b/tests/core/commons/test_context.py index f1903efd2..5f1724283 100644 --- a/tests/core/commons/test_context.py +++ b/tests/core/commons/test_context.py @@ -48,7 +48,7 @@ def test_load_context_from_list(custom_context, context_iri_file, model_prefixes assert context.is_http_iri() is False assert context.base == "http://example.org/" assert context.vocab == "http://example.org/vocab/" - assert context.expand("Person") == "http://schema.org/Person" + assert context.expand("Person") == "https://schema.org/Person" assert context.prefixes == model_prefixes diff --git a/tests/core/conversions/test_rdf.py b/tests/core/conversions/test_rdf.py index 2567071dc..3559256f6 100644 --- a/tests/core/conversions/test_rdf.py +++ b/tests/core/conversions/test_rdf.py @@ -231,19 +231,19 @@ def test_from_graph(self, building, organization, building_jsonld, model_context id = "http://test/1234" id_uri = term.URIRef(id) graph = Graph() - graph.bind("schemaorg", Namespace("http://schema.org/")) - graph.add((id_uri, RDF.type, term.URIRef("http://schema.org/Building"))) - graph.add((id_uri,term.URIRef("http://schema.org/name"),term.Literal("The Empire State Building"))) - graph.add((id_uri,term.URIRef("http://schema.org/description"),term.Literal("The Empire State Building is a 102-story landmark in New York City."))) - graph.add((id_uri,term.URIRef("http://schema.org/image"),term.URIRef("http://www.civil.usherbrooke.ca/cours/gci215a/empire-state-building.jpg"))) + graph.bind("schemaorg", Namespace("https://schema.org/")) + graph.add((id_uri, RDF.type, term.URIRef("https://schema.org/Building"))) + graph.add((id_uri,term.URIRef("https://schema.org/name"),term.Literal("The Empire State Building"))) + graph.add((id_uri,term.URIRef("https://schema.org/description"),term.Literal("The Empire State Building is a 102-story landmark in New York City."))) + graph.add((id_uri,term.URIRef("https://schema.org/image"),term.URIRef("http://www.civil.usherbrooke.ca/cours/gci215a/empire-state-building.jpg"))) bNode = term.BNode() - graph.add((id_uri,term.URIRef("http://schema.org/geo"),bNode)) - graph.add((bNode,term.URIRef("http://schema.org/latitude"), term.Literal("40.75"))) + graph.add((id_uri,term.URIRef("https://schema.org/geo"),bNode)) + graph.add((bNode,term.URIRef("https://schema.org/latitude"), term.Literal("40.75"))) results = from_graph(graph) assert isinstance(results, Resource) results.context.update({"schemaorg:latitude": { - "@id": "http://schema.org/latitude", + "@id": "https://schema.org/latitude", "@type": "xsd:float" }}) building.id = id @@ -254,13 +254,13 @@ def test_from_graph(self, building, organization, building_jsonld, model_context context_resolver=None) assert result_jsonld == expected - graph.remove((id_uri, RDF.type, term.URIRef("http://schema.org/Building"))) + graph.remove((id_uri, RDF.type, term.URIRef("https://schema.org/Building"))) results = from_graph(graph) assert len(results) == 3 - graph.add((id_uri, RDF.type, term.URIRef("http://schema.org/Building"))) - graph.add((term.URIRef("http://www.civil.usherbrooke.ca/cours/gci215a/empire-state-building.jpg"), RDF.type, term.URIRef("http://schema.org/Image"))) - results = from_graph(graph, type_=["http://schema.org/Building", "http://schema.org/Image"]) + graph.add((id_uri, RDF.type, term.URIRef("https://schema.org/Building"))) + graph.add((term.URIRef("http://www.civil.usherbrooke.ca/cours/gci215a/empire-state-building.jpg"), RDF.type, term.URIRef("https://schema.org/Image"))) + results = from_graph(graph, type_=["https://schema.org/Building", "https://schema.org/Image"]) assert len(results) == 2 assert results[0].type is not None assert results[1].type is not None @@ -273,15 +273,15 @@ def test_from_graph(self, building, organization, building_jsonld, model_context model_context=model_context, metadata_context=metadata_context, context_resolver=None) results = [result_0, result_1] - assert set(["http://schema.org/Building","http://schema.org/Image"]) == {result["@type"][0] for result in results} + assert set(["https://schema.org/Building","https://schema.org/Image"]) == {result["@type"][0] for result in results} frame = { - "@type": ['http://schema.org/Image'], + "@type": ['https://schema.org/Image'], "@embed": True } results = from_graph(graph, frame=frame) assert isinstance(results, Resource) - expected = {'@type': ['http://schema.org/Image'], '@id': 'http://www.civil.usherbrooke.ca/cours/gci215a/empire-state-building.jpg'} + expected = {'@type': ['https://schema.org/Image'], '@id': 'http://www.civil.usherbrooke.ca/cours/gci215a/empire-state-building.jpg'} result_jsonld = as_jsonld(results, form="expanded", store_metadata=store_metadata, model_context=model_context, metadata_context=metadata_context, context_resolver=None) diff --git a/tests/data/shacl-model/commons/schemaorg-v26.0.json b/tests/data/shacl-model/commons/schemaorg-v26.0.json new file mode 100644 index 000000000..724a4098d --- /dev/null +++ b/tests/data/shacl-model/commons/schemaorg-v26.0.json @@ -0,0 +1,78422 @@ +[ { + "@id" : "_:genid1", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Certification" + }, { + "@id" : "https://schema.org/CommunicateAction" + }, { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid1000", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid10006", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid10009", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Permit" + } ] + } ] +}, { + "@id" : "_:genid10011", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid10013", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/QuantitativeValue" + } ] + } ] +}, { + "@id" : "_:genid10017", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + }, { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/StructuredValue" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1002", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/ServiceChannel" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10024", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid10026", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid10028", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValueSpecification" + } ] + } ] +}, { + "@id" : "_:genid10030", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid10032", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValueSpecification" + } ] + } ] +}, { + "@id" : "_:genid10034", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid10036", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValueSpecification" + } ] + } ] +}, { + "@id" : "_:genid10038", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10042", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValueSpecification" + } ] + } ] +}, { + "@id" : "_:genid10044", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10048", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/QuantitativeValue" + } ] + } ] +}, { + "@id" : "_:genid10052", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Enumeration" + }, { + "@id" : "https://schema.org/MeasurementTypeEnumeration" + }, { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/StructuredValue" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10063", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValueSpecification" + } ] + } ] +}, { + "@id" : "_:genid10065", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid10067", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Dataset" + }, { + "@id" : "https://schema.org/Observation" + } ] + } ] +}, { + "@id" : "_:genid1007", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid10070", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Property" + }, { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/StatisticalVariable" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10077", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Dataset" + } ] + } ] +}, { + "@id" : "_:genid10079", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10084", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ComicIssue" + } ] + } ] +}, { + "@id" : "_:genid10086", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10090", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProductGroup" + } ] + } ] +}, { + "@id" : "_:genid10092", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10097", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid1010", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryMethod" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10100", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10104", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid10106", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10110", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid10112", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EngineSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10117", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid10119", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10123", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid10125", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10129", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid10131", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10135", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid10137", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid10139", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid10141", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10147", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid10149", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CarUsageType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1015", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryEvent" + } ] + } ] +}, { + "@id" : "_:genid10154", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid10156", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10161", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BuyAction" + } ] + } ] +}, { + "@id" : "_:genid10163", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10169", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsMediaOrganization" + } ] + } ] +}, { + "@id" : "_:genid1017", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid10171", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10176", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid10178", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10183", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid10185", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Clip" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/VideoObject" + } ] + } ] +}, { + "@id" : "_:genid1019", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugStrength" + } ] + } ] +}, { + "@id" : "_:genid10191", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastEvent" + }, { + "@id" : "https://schema.org/BroadcastService" + }, { + "@id" : "https://schema.org/ScreeningEvent" + } ] + } ] +}, { + "@id" : "_:genid10195", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10199", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/VideoObject" + } ] + } ] +}, { + "@id" : "_:genid102", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid10201", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10205", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/VideoObject" + } ] + } ] +}, { + "@id" : "_:genid10207", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1021", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AdministrativeArea" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10211", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PublicationVolume" + } ] + } ] +}, { + "@id" : "_:genid10213", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10218", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid10220", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10224", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid10227", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WarrantyPromise" + } ] + } ] +}, { + "@id" : "_:genid10232", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BuyAction" + }, { + "@id" : "https://schema.org/SellAction" + } ] + } ] +}, { + "@id" : "_:genid10235", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WarrantyPromise" + } ] + } ] +}, { + "@id" : "_:genid10240", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/WarrantyPromise" + } ] + } ] +}, { + "@id" : "_:genid10242", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WarrantyScope" + } ] + } ] +}, { + "@id" : "_:genid10247", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Flight" + } ] + } ] +}, { + "@id" : "_:genid10249", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid10251", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PodcastSeries" + }, { + "@id" : "https://schema.org/SpecialAnnouncement" + } ] + } ] +}, { + "@id" : "_:genid10254", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DataFeed" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10259", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OfferShippingDetails" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid1026", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Course" + }, { + "@id" : "https://schema.org/LodgingBusiness" + }, { + "@id" : "https://schema.org/ServiceChannel" + }, { + "@id" : "https://schema.org/TouristAttraction" + } ] + } ] +}, { + "@id" : "_:genid10263", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10268", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid10270", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10275", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid10277", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10282", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/OfferShippingDetails" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/VisualArtwork" + } ] + } ] +}, { + "@id" : "_:genid10287", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Distance" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10293", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LoseAction" + } ] + } ] +}, { + "@id" : "_:genid10295", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10300", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Article" + } ] + } ] +}, { + "@id" : "_:genid10302", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid10304", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid10306", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10311", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid10313", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10318", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid1032", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Language" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10320", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10324", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid10326", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10332", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid10334", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10339", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ScreeningEvent" + } ] + } ] +}, { + "@id" : "_:genid10341", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Movie" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10346", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid10348", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10353", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExercisePlan" + } ] + } ] +}, { + "@id" : "_:genid10355", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Energy" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10361", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid10363", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10368", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Rating" + } ] + } ] +}, { + "@id" : "_:genid1037", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid10370", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10375", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SpeakableSpecification" + }, { + "@id" : "https://schema.org/WebPageElement" + } ] + } ] +}, { + "@id" : "_:genid10378", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/XPathType" + } ] + } ] +}, { + "@id" : "_:genid10383", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + } ] + } ] +}, { + "@id" : "_:genid10385", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid10387", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BusinessAudience" + } ] + } ] +}, { + "@id" : "_:genid10389", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1039", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10394", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BusinessAudience" + } ] + } ] +}, { + "@id" : "_:genid10396", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid104", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid10401", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowTo" + } ] + } ] +}, { + "@id" : "_:genid10403", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1043", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Hospital" + }, { + "@id" : "https://schema.org/MedicalClinic" + }, { + "@id" : "https://schema.org/Physician" + } ] + } ] +}, { + "@id" : "_:genid1047", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalProcedure" + }, { + "@id" : "https://schema.org/MedicalTest" + }, { + "@id" : "https://schema.org/MedicalTherapy" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1054", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid1056", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugStrength" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1061", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DiagnosticLab" + } ] + } ] +}, { + "@id" : "_:genid1063", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTest" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1068", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryEvent" + } ] + } ] +}, { + "@id" : "_:genid1070", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid1072", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid1078", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid108", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + } ] + } ] +}, { + "@id" : "_:genid1082", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid1087", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1091", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SportsEvent" + } ] + } ] +}, { + "@id" : "_:genid1093", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SportsTeam" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1099", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Article" + } ] + } ] +}, { + "@id" : "_:genid11", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Book" + } ] + } ] +}, { + "@id" : "_:genid110", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1101", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1106", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BankAccount" + } ] + } ] +}, { + "@id" : "_:genid1108", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1112", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EmployeeRole" + }, { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid1115", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/PriceSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1122", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Message" + } ] + } ] +}, { + "@id" : "_:genid1124", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1131", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + }, { + "@id" : "https://schema.org/HotelRoom" + }, { + "@id" : "https://schema.org/Suite" + } ] + } ] +}, { + "@id" : "_:genid1135", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BedDetails" + }, { + "@id" : "https://schema.org/BedType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid114", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + }, { + "@id" : "https://schema.org/Residence" + } ] + } ] +}, { + "@id" : "_:genid1141", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowToDirection" + } ] + } ] +}, { + "@id" : "_:genid1143", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1148", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MoneyTransfer" + } ] + } ] +}, { + "@id" : "_:genid1150", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BankOrCreditUnion" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1155", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid1157", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1161", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthInsurancePlan" + } ] + } ] +}, { + "@id" : "_:genid1163", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1167", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Rating" + } ] + } ] +}, { + "@id" : "_:genid1169", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid117", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FloorPlan" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1174", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid1176", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PostalAddress" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1181", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/UnitPriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid1183", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1190", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/UnitPriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid1192", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid1194", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + } ] + } ] +}, { + "@id" : "_:genid1196", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1201", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/UnitPriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid1203", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid1205", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] + } ] +}, { + "@id" : "_:genid1207", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1212", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] + } ] +}, { + "@id" : "_:genid1214", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1219", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] + } ] +}, { + "@id" : "_:genid122", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + } ] + } ] +}, { + "@id" : "_:genid1221", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1226", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Joint" + } ] + } ] +}, { + "@id" : "_:genid1228", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1232", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid1234", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid1236", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid1238", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid124", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1243", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + } ] + } ] +}, { + "@id" : "_:genid1245", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1249", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Blog" + } ] + } ] +}, { + "@id" : "_:genid1251", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BlogPosting" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1256", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Blog" + } ] + } ] +}, { + "@id" : "_:genid1258", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BlogPosting" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1263", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Muscle" + } ] + } ] +}, { + "@id" : "_:genid1265", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/Vessel" + } ] + } ] +}, { + "@id" : "_:genid1270", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FlightReservation" + } ] + } ] +}, { + "@id" : "_:genid1272", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1276", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Airline" + }, { + "@id" : "https://schema.org/Flight" + } ] + } ] +}, { + "@id" : "_:genid1279", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BoardingPolicyType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid128", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BankAccount" + } ] + } ] +}, { + "@id" : "_:genid1284", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/MedicalProcedure" + } ] + } ] +}, { + "@id" : "_:genid1287", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1291", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid1293", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1298", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Book" + } ] + } ] +}, { + "@id" : "_:genid13", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid130", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1300", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1304", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Book" + } ] + } ] +}, { + "@id" : "_:genid1306", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BookFormatType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1311", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Reservation" + } ] + } ] +}, { + "@id" : "_:genid1313", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1319", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Reservation" + } ] + } ] +}, { + "@id" : "_:genid1321", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid1323", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LendAction" + } ] + } ] +}, { + "@id" : "_:genid1325", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1330", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeoShape" + } ] + } ] +}, { + "@id" : "_:genid1332", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1336", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Nerve" + } ] + } ] +}, { + "@id" : "_:genid1338", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1343", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid1345", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1349", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] + } ] +}, { + "@id" : "_:genid135", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BankAccount" + } ] + } ] +}, { + "@id" : "_:genid1351", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1356", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid1361", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Brand" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1367", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/WebPage" + } ] + } ] +}, { + "@id" : "_:genid1369", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BreadcrumbList" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid137", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1374", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid1376", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1380", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastService" + } ] + } ] +}, { + "@id" : "_:genid1382", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1387", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastChannel" + } ] + } ] +}, { + "@id" : "_:genid1389", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1393", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastService" + } ] + } ] +}, { + "@id" : "_:genid1395", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1399", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastChannel" + }, { + "@id" : "https://schema.org/BroadcastService" + } ] + } ] +}, { + "@id" : "_:genid1402", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastFrequencySpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1407", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastFrequencySpecification" + } ] + } ] +}, { + "@id" : "_:genid1409", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1415", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastEvent" + } ] + } ] +}, { + "@id" : "_:genid1417", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid142", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid1422", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastChannel" + } ] + } ] +}, { + "@id" : "_:genid1424", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1428", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastFrequencySpecification" + } ] + } ] +}, { + "@id" : "_:genid1430", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1435", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastFrequencySpecification" + } ] + } ] +}, { + "@id" : "_:genid1437", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid144", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1441", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastService" + } ] + } ] +}, { + "@id" : "_:genid1443", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1447", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastService" + } ] + } ] +}, { + "@id" : "_:genid1449", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1454", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + }, { + "@id" : "https://schema.org/Order" + }, { + "@id" : "https://schema.org/Reservation" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid1459", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1465", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/WebApplication" + } ] + } ] +}, { + "@id" : "_:genid1467", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1471", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BusTrip" + } ] + } ] +}, { + "@id" : "_:genid1473", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1477", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BusTrip" + } ] + } ] +}, { + "@id" : "_:genid1479", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1483", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ShippingDeliveryTime" + } ] + } ] +}, { + "@id" : "_:genid1485", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OpeningHoursSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid149", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid1490", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/TypeAndQuantityNode" + } ] + } ] +}, { + "@id" : "_:genid1494", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BusinessFunction" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1499", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SellAction" + } ] + } ] +}, { + "@id" : "_:genid15", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid1501", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1507", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicAlbum" + }, { + "@id" : "https://schema.org/MusicRecording" + } ] + } ] +}, { + "@id" : "_:genid151", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1510", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicGroup" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1516", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Schedule" + } ] + } ] +}, { + "@id" : "_:genid1518", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DayOfWeek" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1523", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Schedule" + } ] + } ] +}, { + "@id" : "_:genid1525", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid1527", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Schedule" + } ] + } ] +}, { + "@id" : "_:genid1529", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid1531", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Schedule" + } ] + } ] +}, { + "@id" : "_:genid1533", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid1535", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastService" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid1539", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1543", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NutritionInformation" + } ] + } ] +}, { + "@id" : "_:genid1545", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Energy" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1550", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/VoteAction" + } ] + } ] +}, { + "@id" : "_:genid1552", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1557", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AudioObject" + }, { + "@id" : "https://schema.org/ImageObject" + }, { + "@id" : "https://schema.org/VideoObject" + } ] + } ] +}, { + "@id" : "_:genid156", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OwnershipInfo" + } ] + } ] +}, { + "@id" : "_:genid1561", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1566", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NutritionInformation" + } ] + } ] +}, { + "@id" : "_:genid1568", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Mass" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1573", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid1575", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid158", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1580", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Flight" + }, { + "@id" : "https://schema.org/ParcelDelivery" + } ] + } ] +}, { + "@id" : "_:genid1583", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1588", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MobileApplication" + } ] + } ] +}, { + "@id" : "_:genid1590", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1594", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PaymentCard" + } ] + } ] +}, { + "@id" : "_:genid1596", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + }, { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid1599", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Dataset" + } ] + } ] +}, { + "@id" : "_:genid1601", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DataCatalog" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1606", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicRelease" + } ] + } ] +}, { + "@id" : "_:genid1608", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1612", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ActionAccessSpecification" + }, { + "@id" : "https://schema.org/Invoice" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/PhysicalActivity" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Recommendation" + }, { + "@id" : "https://schema.org/Service" + }, { + "@id" : "https://schema.org/SpecialAnnouncement" + } ] + } ] +}, { + "@id" : "_:genid1621", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CategoryCode" + }, { + "@id" : "https://schema.org/PhysicalActivityCategory" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1628", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCause" + } ] + } ] +}, { + "@id" : "_:genid1630", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1635", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Message" + } ] + } ] +}, { + "@id" : "_:genid1637", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid164", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BusOrCoach" + }, { + "@id" : "https://schema.org/Car" + } ] + } ] +}, { + "@id" : "_:genid1644", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Certification" + } ] + } ] +}, { + "@id" : "_:genid1646", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1651", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Certification" + } ] + } ] +}, { + "@id" : "_:genid1653", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CertificationStatusEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1658", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid1660", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1665", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Game" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid1668", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid167", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1673", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PerformanceRole" + } ] + } ] +}, { + "@id" : "_:genid1675", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1679", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/VideoGame" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid1682", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1687", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LodgingBusiness" + }, { + "@id" : "https://schema.org/LodgingReservation" + } ] + } ] +}, { + "@id" : "_:genid1690", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + }, { + "@id" : "https://schema.org/Time" + } ] + } ] +}, { + "@id" : "_:genid1693", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid1695", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1699", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LodgingBusiness" + }, { + "@id" : "https://schema.org/LodgingReservation" + } ] + } ] +}, { + "@id" : "_:genid17", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1702", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + }, { + "@id" : "https://schema.org/Time" + } ] + } ] +}, { + "@id" : "_:genid1705", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ChemicalSubstance" + } ] + } ] +}, { + "@id" : "_:genid1707", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid171", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ConsumeAction" + } ] + } ] +}, { + "@id" : "_:genid1711", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ChemicalSubstance" + }, { + "@id" : "https://schema.org/MolecularEntity" + } ] + } ] +}, { + "@id" : "_:genid1714", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1719", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ParentAudience" + } ] + } ] +}, { + "@id" : "_:genid1721", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid1723", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ParentAudience" + } ] + } ] +}, { + "@id" : "_:genid1725", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid1727", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Taxon" + } ] + } ] +}, { + "@id" : "_:genid1729", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Taxon" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid173", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ActionAccessSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1734", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid1736", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1741", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NutritionInformation" + } ] + } ] +}, { + "@id" : "_:genid1743", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Mass" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1748", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeoShape" + } ] + } ] +}, { + "@id" : "_:genid1750", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1754", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid1756", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1761", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Claim" + } ] + } ] +}, { + "@id" : "_:genid1763", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1769", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ClaimReview" + } ] + } ] +}, { + "@id" : "_:genid1771", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1775", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid1777", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid178", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EntryPoint" + } ] + } ] +}, { + "@id" : "_:genid1781", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid1783", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1787", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Clip" + } ] + } ] +}, { + "@id" : "_:genid1789", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1794", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OpeningHoursSpecification" + } ] + } ] +}, { + "@id" : "_:genid1796", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Time" + } ] + } ] +}, { + "@id" : "_:genid1798", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SportsTeam" + } ] + } ] +}, { + "@id" : "_:genid180", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SoftwareApplication" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1800", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1805", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] + } ] +}, { + "@id" : "_:genid1807", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCode" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1812", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareSourceCode" + } ] + } ] +}, { + "@id" : "_:genid1814", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1818", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareSourceCode" + } ] + } ] +}, { + "@id" : "_:genid1820", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1824", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CategoryCode" + }, { + "@id" : "https://schema.org/MedicalCode" + } ] + } ] +}, { + "@id" : "_:genid1827", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1831", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCode" + } ] + } ] +}, { + "@id" : "_:genid1833", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1837", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid1839", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1844", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid1846", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid185", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ChooseAction" + } ] + } ] +}, { + "@id" : "_:genid1851", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/UpdateAction" + } ] + } ] +}, { + "@id" : "_:genid1853", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1858", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Collection" + } ] + } ] +}, { + "@id" : "_:genid1860", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid1862", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid1864", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1868", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid187", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1870", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ImageObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1875", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ComicIssue" + }, { + "@id" : "https://schema.org/ComicStory" + }, { + "@id" : "https://schema.org/VisualArtwork" + } ] + } ] +}, { + "@id" : "_:genid1879", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1884", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/RsvpAction" + } ] + } ] +}, { + "@id" : "_:genid1887", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Comment" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1892", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid1894", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid1896", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/UserComments" + } ] + } ] +}, { + "@id" : "_:genid1898", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1902", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/UserComments" + } ] + } ] +}, { + "@id" : "_:genid1904", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid1907", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalCredential" + }, { + "@id" : "https://schema.org/LearningResource" + } ] + } ] +}, { + "@id" : "_:genid1910", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1915", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SportsEvent" + } ] + } ] +}, { + "@id" : "_:genid1917", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SportsTeam" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid192", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EntryPoint" + } ] + } ] +}, { + "@id" : "_:genid1923", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/MusicComposition" + } ] + } ] +}, { + "@id" : "_:genid1926", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1932", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalSystem" + } ] + } ] +}, { + "@id" : "_:genid1934", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/AnatomicalSystem" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid194", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DigitalPlatformEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1940", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid1942", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1946", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + }, { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid1949", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1953", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + } ] + } ] +}, { + "@id" : "_:genid1955", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1960", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ConstraintNode" + } ] + } ] +}, { + "@id" : "_:genid1962", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Property" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1967", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + } ] + } ] +}, { + "@id" : "_:genid1969", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPointOption" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1974", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthInsurancePlan" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid1978", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1983", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid1986", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid199", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Action" + } ] + } ] +}, { + "@id" : "_:genid1991", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + } ] + } ] +}, { + "@id" : "_:genid1993", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid1997", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PaymentCard" + } ] + } ] +}, { + "@id" : "_:genid1999", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid2001", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid2003", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2008", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid201", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ActionStatusType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2010", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2015", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid2017", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2022", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RadioSeries" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid2026", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2031", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid2033", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2038", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid2040", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Rating" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2045", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid2047", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid2049", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + } ] + } ] +}, { + "@id" : "_:genid2051", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2055", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EntryPoint" + } ] + } ] +}, { + "@id" : "_:genid2057", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid206", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsMediaOrganization" + }, { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid2061", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + } ] + } ] +}, { + "@id" : "_:genid2063", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2067", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalDevice" + }, { + "@id" : "https://schema.org/MedicalTherapy" + } ] + } ] +}, { + "@id" : "_:genid2070", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalContraindication" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2075", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid2078", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2084", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Recipe" + } ] + } ] +}, { + "@id" : "_:genid2086", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid209", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2091", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Recipe" + } ] + } ] +}, { + "@id" : "_:genid2093", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2097", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid2099", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid21", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid2105", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid2107", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2111", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid2113", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2115", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid2117", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CorrectionComment" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2122", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsMediaOrganization" + }, { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid2125", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2130", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugCost" + } ] + } ] +}, { + "@id" : "_:genid2132", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugCostCategory" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2137", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugCost" + } ] + } ] +}, { + "@id" : "_:genid2139", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid214", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DietarySupplement" + }, { + "@id" : "https://schema.org/Drug" + }, { + "@id" : "https://schema.org/DrugStrength" + }, { + "@id" : "https://schema.org/Substance" + } ] + } ] +}, { + "@id" : "_:genid2143", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugCost" + } ] + } ] +}, { + "@id" : "_:genid2145", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2149", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugCost" + } ] + } ] +}, { + "@id" : "_:genid2151", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2157", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid2159", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2163", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid2165", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2169", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid2171", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2175", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid2177", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2181", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Movie" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/TVEpisode" + }, { + "@id" : "https://schema.org/TVSeason" + }, { + "@id" : "https://schema.org/TVSeries" + } ] + } ] +}, { + "@id" : "_:genid2188", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Country" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid219", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2193", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExerciseAction" + } ] + } ] +}, { + "@id" : "_:genid2195", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2200", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Course" + } ] + } ] +}, { + "@id" : "_:genid2202", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2206", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CourseInstance" + } ] + } ] +}, { + "@id" : "_:genid2208", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2212", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Course" + } ] + } ] +}, { + "@id" : "_:genid2214", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AlignmentObject" + }, { + "@id" : "https://schema.org/Course" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2220", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CourseInstance" + } ] + } ] +}, { + "@id" : "_:genid2222", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Schedule" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2227", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CourseInstance" + } ] + } ] +}, { + "@id" : "_:genid2229", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid223", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExercisePlan" + } ] + } ] +}, { + "@id" : "_:genid2233", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LiveBlogPosting" + } ] + } ] +}, { + "@id" : "_:genid2235", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid2237", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LiveBlogPosting" + } ] + } ] +}, { + "@id" : "_:genid2239", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid2241", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid2243", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2248", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/UserComments" + } ] + } ] +}, { + "@id" : "_:genid225", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2251", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2257", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalCredential" + } ] + } ] +}, { + "@id" : "_:genid2259", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2264", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid2266", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2270", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicRelease" + } ] + } ] +}, { + "@id" : "_:genid2272", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2278", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SpeakableSpecification" + }, { + "@id" : "https://schema.org/WebPageElement" + } ] + } ] +}, { + "@id" : "_:genid2281", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CssSelectorType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2286", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] + } ] +}, { + "@id" : "_:genid2288", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2292", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DatedMoneySpecification" + }, { + "@id" : "https://schema.org/ExchangeRateSpecification" + }, { + "@id" : "https://schema.org/LoanOrCredit" + }, { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/MonetaryAmountDistribution" + } ] + } ] +}, { + "@id" : "_:genid2298", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid23", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2302", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExchangeRateSpecification" + } ] + } ] +}, { + "@id" : "_:genid2304", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/UnitPriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid2309", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + }, { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid231", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExercisePlan" + } ] + } ] +}, { + "@id" : "_:genid2312", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2318", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid2320", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ReturnFeesEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2325", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid2327", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ReturnLabelSourceEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid233", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2332", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid2334", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2339", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ShippingDeliveryTime" + } ] + } ] +}, { + "@id" : "_:genid2341", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Time" + } ] + } ] +}, { + "@id" : "_:genid2343", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2345", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2350", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2352", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2356", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2358", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2362", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2364", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2366", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2368", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2370", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2372", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2374", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2376", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2378", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid238", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Clip" + }, { + "@id" : "https://schema.org/CreativeWorkSeason" + }, { + "@id" : "https://schema.org/Episode" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Movie" + }, { + "@id" : "https://schema.org/MovieSeries" + }, { + "@id" : "https://schema.org/PodcastSeries" + }, { + "@id" : "https://schema.org/RadioSeries" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/VideoGame" + }, { + "@id" : "https://schema.org/VideoGameSeries" + }, { + "@id" : "https://schema.org/VideoObject" + } ] + } ] +}, { + "@id" : "_:genid2380", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2382", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2384", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2386", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2388", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2390", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2392", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2394", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2396", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2398", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2400", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2402", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2404", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2406", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2408", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2410", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + } ] + } ] +}, { + "@id" : "_:genid2412", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2414", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DataFeed" + } ] + } ] +}, { + "@id" : "_:genid2416", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DataFeedItem" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2422", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DataCatalog" + } ] + } ] +}, { + "@id" : "_:genid2424", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Dataset" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2429", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Dataset" + } ] + } ] +}, { + "@id" : "_:genid2431", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid2433", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/DataFeedItem" + } ] + } ] +}, { + "@id" : "_:genid2436", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid2439", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DataFeedItem" + } ] + } ] +}, { + "@id" : "_:genid2441", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid2444", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Ticket" + } ] + } ] +}, { + "@id" : "_:genid2446", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid2449", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/DataFeedItem" + } ] + } ] +}, { + "@id" : "_:genid2452", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid2455", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + }, { + "@id" : "https://schema.org/JobPosting" + }, { + "@id" : "https://schema.org/RealEstateListing" + }, { + "@id" : "https://schema.org/SpecialAnnouncement" + } ] + } ] +}, { + "@id" : "_:genid2460", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid2463", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Certification" + }, { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid2466", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid2469", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Message" + } ] + } ] +}, { + "@id" : "_:genid2471", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid2474", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Message" + } ] + } ] +}, { + "@id" : "_:genid2476", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid2478", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Message" + } ] + } ] +}, { + "@id" : "_:genid2480", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid2482", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid2484", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid2486", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsArticle" + } ] + } ] +}, { + "@id" : "_:genid2488", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2492", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + }, { + "@id" : "https://schema.org/OpeningHoursSpecification" + } ] + } ] +}, { + "@id" : "_:genid2495", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DayOfWeek" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2500", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid2502", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid2504", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid2506", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid251", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2511", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValueSpecification" + } ] + } ] +}, { + "@id" : "_:genid2513", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2518", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ParcelDelivery" + } ] + } ] +}, { + "@id" : "_:genid2520", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PostalAddress" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2525", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid2528", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2533", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OrderAction" + }, { + "@id" : "https://schema.org/ReceiveAction" + }, { + "@id" : "https://schema.org/SendAction" + }, { + "@id" : "https://schema.org/TrackAction" + } ] + } ] +}, { + "@id" : "_:genid2538", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryMethod" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2543", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ParcelDelivery" + } ] + } ] +}, { + "@id" : "_:genid2545", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryEvent" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2550", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryTimeSettings" + }, { + "@id" : "https://schema.org/OfferShippingDetails" + } ] + } ] +}, { + "@id" : "_:genid2553", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/ShippingDeliveryTime" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2558", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid256", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Clip" + }, { + "@id" : "https://schema.org/Episode" + }, { + "@id" : "https://schema.org/Movie" + }, { + "@id" : "https://schema.org/MovieSeries" + }, { + "@id" : "https://schema.org/RadioSeries" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/VideoGame" + }, { + "@id" : "https://schema.org/VideoGameSeries" + }, { + "@id" : "https://schema.org/VideoObject" + } ] + } ] +}, { + "@id" : "_:genid2560", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2565", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Flight" + } ] + } ] +}, { + "@id" : "_:genid2567", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Airport" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2572", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BoatTrip" + } ] + } ] +}, { + "@id" : "_:genid2574", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BoatTerminal" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2579", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BusTrip" + } ] + } ] +}, { + "@id" : "_:genid2581", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BusStation" + }, { + "@id" : "https://schema.org/BusStop" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2587", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Flight" + } ] + } ] +}, { + "@id" : "_:genid2589", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2593", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/TrainTrip" + } ] + } ] +}, { + "@id" : "_:genid2595", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2599", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/TrainTrip" + } ] + } ] +}, { + "@id" : "_:genid2601", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/TrainStation" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2606", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Flight" + } ] + } ] +}, { + "@id" : "_:genid2608", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2612", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Trip" + } ] + } ] +}, { + "@id" : "_:genid2614", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + }, { + "@id" : "https://schema.org/Time" + } ] + } ] +}, { + "@id" : "_:genid2617", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/TechArticle" + } ] + } ] +}, { + "@id" : "_:genid2619", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2623", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OfferShippingDetails" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/VisualArtwork" + } ] + } ] +}, { + "@id" : "_:genid2627", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Distance" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2633", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Thing" + } ] + } ] +}, { + "@id" : "_:genid2635", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/TextObject" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2640", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid2642", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2646", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DDxElement" + }, { + "@id" : "https://schema.org/Patient" + } ] + } ] +}, { + "@id" : "_:genid2649", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2654", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + } ] + } ] +}, { + "@id" : "_:genid2656", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ImageObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid266", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2661", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExerciseAction" + } ] + } ] +}, { + "@id" : "_:genid2663", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Diet" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2668", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Diet" + } ] + } ] +}, { + "@id" : "_:genid2670", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2674", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + } ] + } ] +}, { + "@id" : "_:genid2676", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DDxElement" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2681", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid2683", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/IPTCDigitalSourceEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2688", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid2690", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid2692", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Clip" + }, { + "@id" : "https://schema.org/CreativeWorkSeason" + }, { + "@id" : "https://schema.org/Episode" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Movie" + }, { + "@id" : "https://schema.org/MovieSeries" + }, { + "@id" : "https://schema.org/RadioSeries" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/VideoGame" + }, { + "@id" : "https://schema.org/VideoGameSeries" + }, { + "@id" : "https://schema.org/VideoObject" + } ] + } ] +}, { + "@id" : "_:genid2704", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2709", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Clip" + }, { + "@id" : "https://schema.org/Episode" + }, { + "@id" : "https://schema.org/Movie" + }, { + "@id" : "https://schema.org/MovieSeries" + }, { + "@id" : "https://schema.org/RadioSeries" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/VideoGame" + }, { + "@id" : "https://schema.org/VideoGameSeries" + }, { + "@id" : "https://schema.org/VideoObject" + } ] + } ] +}, { + "@id" : "_:genid271", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid2719", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2724", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Thing" + } ] + } ] +}, { + "@id" : "_:genid2726", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid273", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2730", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid2732", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2737", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid2739", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2743", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid2745", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2749", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/UserComments" + } ] + } ] +}, { + "@id" : "_:genid2751", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2756", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid2758", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2762", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SpecialAnnouncement" + } ] + } ] +}, { + "@id" : "_:genid2764", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebContent" + } ] + } ] +}, { + "@id" : "_:genid2769", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SpecialAnnouncement" + } ] + } ] +}, { + "@id" : "_:genid2771", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Dataset" + }, { + "@id" : "https://schema.org/Observation" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebContent" + } ] + } ] +}, { + "@id" : "_:genid2778", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid278", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid2780", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid2782", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExerciseAction" + }, { + "@id" : "https://schema.org/TravelAction" + } ] + } ] +}, { + "@id" : "_:genid2785", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Distance" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2790", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DDxElement" + } ] + } ] +}, { + "@id" : "_:genid2792", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalSignOrSymptom" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2797", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Dataset" + } ] + } ] +}, { + "@id" : "_:genid2799", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DataDownload" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid28", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Question" + } ] + } ] +}, { + "@id" : "_:genid280", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2804", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsMediaOrganization" + }, { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid2807", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2812", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsMediaOrganization" + }, { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid2815", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Article" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2820", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/WebAPI" + } ] + } ] +}, { + "@id" : "_:genid2822", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2827", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OfferShippingDetails" + }, { + "@id" : "https://schema.org/ShippingRateSettings" + } ] + } ] +}, { + "@id" : "_:genid2830", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid2832", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Property" + } ] + } ] +}, { + "@id" : "_:genid2834", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Class" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2839", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MortgageLoan" + } ] + } ] +}, { + "@id" : "_:genid284", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RsvpAction" + } ] + } ] +}, { + "@id" : "_:genid2841", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid2843", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid2845", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + }, { + "@id" : "https://schema.org/Time" + } ] + } ] +}, { + "@id" : "_:genid2848", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid2850", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2854", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + }, { + "@id" : "https://schema.org/TherapeuticProcedure" + } ] + } ] +}, { + "@id" : "_:genid2857", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DoseSchedule" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid286", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid2862", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DoseSchedule" + } ] + } ] +}, { + "@id" : "_:genid2864", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2868", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DoseSchedule" + } ] + } ] +}, { + "@id" : "_:genid2870", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2876", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RepaymentSpecification" + } ] + } ] +}, { + "@id" : "_:genid2878", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid288", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/QuantitativeValue" + } ] + } ] +}, { + "@id" : "_:genid2884", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid2886", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2890", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Comment" + } ] + } ] +}, { + "@id" : "_:genid2892", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid2894", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vein" + } ] + } ] +}, { + "@id" : "_:genid2896", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/Vessel" + } ] + } ] +}, { + "@id" : "_:genid2901", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid2903", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DriveWheelConfigurationValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2908", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RentalCarReservation" + } ] + } ] +}, { + "@id" : "_:genid2910", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2915", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RentalCarReservation" + } ] + } ] +}, { + "@id" : "_:genid2917", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid2919", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugClass" + }, { + "@id" : "https://schema.org/MedicalCondition" + }, { + "@id" : "https://schema.org/Patient" + }, { + "@id" : "https://schema.org/TherapeuticProcedure" + } ] + } ] +}, { + "@id" : "_:genid2924", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2929", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid2931", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugClass" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2936", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + }, { + "@id" : "https://schema.org/DrugCost" + } ] + } ] +}, { + "@id" : "_:genid2939", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2943", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid2946", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid295", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2950", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTherapy" + } ] + } ] +}, { + "@id" : "_:genid2952", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTherapy" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2957", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Audiobook" + }, { + "@id" : "https://schema.org/Episode" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/Movie" + }, { + "@id" : "https://schema.org/MusicRecording" + }, { + "@id" : "https://schema.org/MusicRelease" + }, { + "@id" : "https://schema.org/QuantitativeValueDistribution" + }, { + "@id" : "https://schema.org/Schedule" + } ] + } ] +}, { + "@id" : "_:genid2967", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2972", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/WarrantyPromise" + } ] + } ] +}, { + "@id" : "_:genid2974", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2979", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowToDirection" + } ] + } ] +}, { + "@id" : "_:genid2981", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2986", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RepaymentSpecification" + } ] + } ] +}, { + "@id" : "_:genid2988", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2993", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid2995", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid2999", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid30", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Answer" + }, { + "@id" : "https://schema.org/ItemList" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid300", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Thing" + } ] + } ] +}, { + "@id" : "_:genid3001", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3006", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Question" + }, { + "@id" : "https://schema.org/SolveMathAction" + } ] + } ] +}, { + "@id" : "_:genid3009", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3013", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + }, { + "@id" : "https://schema.org/Occupation" + } ] + } ] +}, { + "@id" : "_:genid3016", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalCredential" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid302", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3021", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/LearningResource" + } ] + } ] +}, { + "@id" : "_:genid3024", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AlignmentObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3029", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Course" + }, { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid3032", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalCredential" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3037", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AlignmentObject" + } ] + } ] +}, { + "@id" : "_:genid3039", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3043", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/EducationEvent" + }, { + "@id" : "https://schema.org/EducationalOccupationalCredential" + }, { + "@id" : "https://schema.org/LearningResource" + } ] + } ] +}, { + "@id" : "_:genid3048", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3053", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid3055", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3059", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalAudience" + } ] + } ] +}, { + "@id" : "_:genid306", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExercisePlan" + } ] + } ] +}, { + "@id" : "_:genid3061", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3065", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/LearningResource" + } ] + } ] +}, { + "@id" : "_:genid3068", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3073", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeoCoordinates" + }, { + "@id" : "https://schema.org/GeoShape" + } ] + } ] +}, { + "@id" : "_:genid3076", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid308", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3081", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid3083", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3087", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid3090", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BusinessEntityType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3095", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid3098", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3103", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/PriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid3107", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3112", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ActionAccessSpecification" + }, { + "@id" : "https://schema.org/DeliveryChargeSpecification" + }, { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid3117", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeoShape" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid312", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeoCoordinates" + }, { + "@id" : "https://schema.org/GeoShape" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid3123", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/PriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid3127", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PriceSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3132", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid3136", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3140", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + } ] + } ] +}, { + "@id" : "_:genid3142", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3146", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AudioObject" + }, { + "@id" : "https://schema.org/ImageObject" + }, { + "@id" : "https://schema.org/VideoObject" + } ] + } ] +}, { + "@id" : "_:genid3150", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3154", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid3156", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid3158", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid3160", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3165", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid3167", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3172", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid3174", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3178", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid318", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PostalAddress" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3180", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3184", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid3186", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3191", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Gene" + } ] + } ] +}, { + "@id" : "_:genid3193", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3198", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + } ] + } ] +}, { + "@id" : "_:genid3200", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3205", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid3207", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3212", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/MediaObject" + } ] + } ] +}, { + "@id" : "_:genid3215", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3219", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EntryPoint" + } ] + } ] +}, { + "@id" : "_:genid3221", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3225", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid3227", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid323", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedRegion" + }, { + "@id" : "https://schema.org/GeoCoordinates" + }, { + "@id" : "https://schema.org/GeoShape" + }, { + "@id" : "https://schema.org/PostalAddress" + } ] + } ] +}, { + "@id" : "_:genid3232", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + }, { + "@id" : "https://schema.org/CreativeWorkSeries" + }, { + "@id" : "https://schema.org/DatedMoneySpecification" + }, { + "@id" : "https://schema.org/EducationalOccupationalProgram" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/MerchantReturnPolicySeasonalOverride" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Schedule" + } ] + } ] +}, { + "@id" : "_:genid3241", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid3244", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Clip" + } ] + } ] +}, { + "@id" : "_:genid3246", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HyperTocEntry" + }, { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3252", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Action" + }, { + "@id" : "https://schema.org/FoodEstablishmentReservation" + }, { + "@id" : "https://schema.org/InteractionCounter" + }, { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/Schedule" + } ] + } ] +}, { + "@id" : "_:genid3258", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + }, { + "@id" : "https://schema.org/Time" + } ] + } ] +}, { + "@id" : "_:genid3261", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EndorseAction" + } ] + } ] +}, { + "@id" : "_:genid3263", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3269", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Diet" + } ] + } ] +}, { + "@id" : "_:genid3271", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3277", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EnergyConsumptionDetails" + } ] + } ] +}, { + "@id" : "_:genid3279", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EUEnergyEfficiencyEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid328", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Country" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3284", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EnergyConsumptionDetails" + } ] + } ] +}, { + "@id" : "_:genid3286", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EUEnergyEfficiencyEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3291", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EngineSpecification" + } ] + } ] +}, { + "@id" : "_:genid3293", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3298", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EngineSpecification" + } ] + } ] +}, { + "@id" : "_:genid3300", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3305", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EngineSpecification" + } ] + } ] +}, { + "@id" : "_:genid3307", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3312", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PerformAction" + } ] + } ] +}, { + "@id" : "_:genid3314", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EntertainmentBusiness" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3319", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + }, { + "@id" : "https://schema.org/PhysicalActivity" + } ] + } ] +}, { + "@id" : "_:genid3322", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3326", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + }, { + "@id" : "https://schema.org/RadioSeries" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid333", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PostalAddress" + } ] + } ] +}, { + "@id" : "_:genid3331", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Episode" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3336", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Episode" + } ] + } ] +}, { + "@id" : "_:genid3338", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3343", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + }, { + "@id" : "https://schema.org/RadioSeries" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid3348", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Episode" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid335", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3353", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + } ] + } ] +}, { + "@id" : "_:genid3355", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3360", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Action" + } ] + } ] +}, { + "@id" : "_:genid3362", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3367", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowTo" + }, { + "@id" : "https://schema.org/HowToSupply" + } ] + } ] +}, { + "@id" : "_:genid3370", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3375", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Flight" + } ] + } ] +}, { + "@id" : "_:genid3377", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3382", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + }, { + "@id" : "https://schema.org/Occupation" + } ] + } ] +}, { + "@id" : "_:genid3385", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/MonetaryAmountDistribution" + }, { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid339", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedRegion" + }, { + "@id" : "https://schema.org/PostalAddress" + } ] + } ] +}, { + "@id" : "_:genid3392", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalRiskEstimator" + } ] + } ] +}, { + "@id" : "_:genid3394", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3399", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsMediaOrganization" + }, { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid3402", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3407", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/InformAction" + }, { + "@id" : "https://schema.org/InviteAction" + }, { + "@id" : "https://schema.org/JoinAction" + }, { + "@id" : "https://schema.org/LeaveAction" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/PlayAction" + } ] + } ] +}, { + "@id" : "_:genid3415", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid342", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3420", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid3422", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EventAttendanceModeEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3427", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid3429", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Schedule" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3434", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid3436", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EventStatusType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3441", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid3444", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3449", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalGuideline" + } ] + } ] +}, { + "@id" : "_:genid3451", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEvidenceLevel" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3456", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalGuideline" + } ] + } ] +}, { + "@id" : "_:genid3458", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid346", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid3462", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid3464", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3469", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Schedule" + } ] + } ] +}, { + "@id" : "_:genid3471", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid3474", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExchangeRateSpecification" + } ] + } ] +}, { + "@id" : "_:genid3476", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid348", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3482", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/APIReference" + } ] + } ] +}, { + "@id" : "_:genid3484", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3488", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExerciseAction" + } ] + } ] +}, { + "@id" : "_:genid3490", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3495", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExerciseAction" + } ] + } ] +}, { + "@id" : "_:genid3497", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExercisePlan" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3502", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExerciseAction" + } ] + } ] +}, { + "@id" : "_:genid3504", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Diet" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3509", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExerciseAction" + }, { + "@id" : "https://schema.org/ExercisePlan" + } ] + } ] +}, { + "@id" : "_:genid3512", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3516", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ImageObject" + } ] + } ] +}, { + "@id" : "_:genid3518", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid352", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid3523", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ParcelDelivery" + } ] + } ] +}, { + "@id" : "_:genid3525", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid3528", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ParcelDelivery" + } ] + } ] +}, { + "@id" : "_:genid3530", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid3533", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + } ] + } ] +}, { + "@id" : "_:genid3535", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3539", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ActionAccessSpecification" + }, { + "@id" : "https://schema.org/ConsumeAction" + }, { + "@id" : "https://schema.org/MediaSubscription" + } ] + } ] +}, { + "@id" : "_:genid3543", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3548", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid355", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3550", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid3552", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + }, { + "@id" : "https://schema.org/Occupation" + } ] + } ] +}, { + "@id" : "_:genid3555", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OccupationalExperienceRequirements" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3560", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Diet" + } ] + } ] +}, { + "@id" : "_:genid3562", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3566", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Certification" + }, { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid3569", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid3572", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Gene" + } ] + } ] +}, { + "@id" : "_:genid3574", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/AnatomicalSystem" + }, { + "@id" : "https://schema.org/BioChemEntity" + }, { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3582", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid3584", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3588", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NutritionInformation" + } ] + } ] +}, { + "@id" : "_:genid3590", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Mass" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3595", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid36", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid360", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalDevice" + }, { + "@id" : "https://schema.org/TherapeuticProcedure" + } ] + } ] +}, { + "@id" : "_:genid3600", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3604", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid3606", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3610", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FinancialProduct" + }, { + "@id" : "https://schema.org/FinancialService" + } ] + } ] +}, { + "@id" : "_:genid3613", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3617", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NutritionInformation" + } ] + } ] +}, { + "@id" : "_:genid3619", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Mass" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3624", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid3626", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid363", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3630", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid3632", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3636", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Course" + }, { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid3639", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3644", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Claim" + } ] + } ] +}, { + "@id" : "_:genid3646", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3651", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicComposition" + } ] + } ] +}, { + "@id" : "_:genid3653", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3658", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Flight" + } ] + } ] +}, { + "@id" : "_:genid3660", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Distance" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3665", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Flight" + } ] + } ] +}, { + "@id" : "_:genid3667", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3671", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + } ] + } ] +}, { + "@id" : "_:genid3673", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3677", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PaymentCard" + } ] + } ] +}, { + "@id" : "_:genid3679", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid368", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTest" + } ] + } ] +}, { + "@id" : "_:genid3684", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + }, { + "@id" : "https://schema.org/FloorPlan" + } ] + } ] +}, { + "@id" : "_:genid3687", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3692", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FollowAction" + } ] + } ] +}, { + "@id" : "_:genid3694", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid370", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3700", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid3702", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3707", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalProcedure" + } ] + } ] +}, { + "@id" : "_:genid3709", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3713", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CookAction" + } ] + } ] +}, { + "@id" : "_:genid3715", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FoodEstablishment" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3721", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CookAction" + } ] + } ] +}, { + "@id" : "_:genid3723", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FoodEvent" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3728", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid3730", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3734", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid3736", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3741", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid3743", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3748", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid375", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid3750", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid3752", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid3754", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3759", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PublicationEvent" + } ] + } ] +}, { + "@id" : "_:genid3761", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid3763", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ShippingRateSettings" + } ] + } ] +}, { + "@id" : "_:genid3765", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryChargeSpecification" + }, { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid377", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3771", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DoseSchedule" + } ] + } ] +}, { + "@id" : "_:genid3773", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3777", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExerciseAction" + }, { + "@id" : "https://schema.org/MoveAction" + }, { + "@id" : "https://schema.org/TransferAction" + } ] + } ] +}, { + "@id" : "_:genid3781", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3786", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid3788", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3793", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid3795", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid38", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3800", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid3802", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3807", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EngineSpecification" + }, { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid3810", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3815", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Joint" + } ] + } ] +}, { + "@id" : "_:genid3817", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid382", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowToDirection" + } ] + } ] +}, { + "@id" : "_:genid3822", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Grant" + } ] + } ] +}, { + "@id" : "_:genid3824", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + }, { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/MedicalEntity" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3835", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Grant" + }, { + "@id" : "https://schema.org/MonetaryGrant" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid384", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3842", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3848", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + }, { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/MedicalEntity" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid3856", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Grant" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3861", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GameServer" + } ] + } ] +}, { + "@id" : "_:genid3863", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/VideoGame" + } ] + } ] +}, { + "@id" : "_:genid3868", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PlayGameAction" + } ] + } ] +}, { + "@id" : "_:genid3870", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GameAvailabilityEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3875", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/VideoGame" + } ] + } ] +}, { + "@id" : "_:genid3877", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3881", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Game" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid3884", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3889", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Game" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid389", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Action" + } ] + } ] +}, { + "@id" : "_:genid3892", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/PostalAddress" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3898", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/VideoGame" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid3901", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3906", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/VideoGame" + } ] + } ] +}, { + "@id" : "_:genid3908", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GameServer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid391", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3913", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/VideoGame" + } ] + } ] +}, { + "@id" : "_:genid3915", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3920", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/SportsTeam" + } ] + } ] +}, { + "@id" : "_:genid3923", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GenderType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3928", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastChannel" + }, { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/MusicGroup" + } ] + } ] +}, { + "@id" : "_:genid3932", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3936", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid3938", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeoCoordinates" + }, { + "@id" : "https://schema.org/GeoShape" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3944", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid3947", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3953", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid3956", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3962", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid3965", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid397", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid3971", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid3974", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3980", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid3983", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3989", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid3992", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid3998", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid400", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/InteractionCounter" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4001", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4007", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeoCircle" + } ] + } ] +}, { + "@id" : "_:genid4009", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeoCoordinates" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4014", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid4017", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4023", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeoCircle" + } ] + } ] +}, { + "@id" : "_:genid4025", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Distance" + }, { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4031", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid4034", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4040", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid4043", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeospatialGeometry" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4049", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Audience" + } ] + } ] +}, { + "@id" : "_:genid405", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Brand" + }, { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid4051", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AdministrativeArea" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4056", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SpecialAnnouncement" + } ] + } ] +}, { + "@id" : "_:genid4058", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebContent" + } ] + } ] +}, { + "@id" : "_:genid4063", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid4065", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4069", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid4073", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4077", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SpecialAnnouncement" + } ] + } ] +}, { + "@id" : "_:genid4079", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GovernmentService" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4084", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LoanOrCredit" + } ] + } ] +}, { + "@id" : "_:genid4086", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4091", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DigitalDocumentPermission" + } ] + } ] +}, { + "@id" : "_:genid4093", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Audience" + }, { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4101", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + } ] + } ] +}, { + "@id" : "_:genid4103", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4108", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + } ] + } ] +}, { + "@id" : "_:genid4110", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4115", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid4119", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4123", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid4127", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4131", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid4135", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4139", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid414", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AggregateRating" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4143", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4147", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid4151", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4155", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] + } ] +}, { + "@id" : "_:genid4157", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalGuideline" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4162", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalGuideline" + } ] + } ] +}, { + "@id" : "_:genid4164", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid4166", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalGuideline" + } ] + } ] +}, { + "@id" : "_:genid4168", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4173", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ShippingDeliveryTime" + } ] + } ] +}, { + "@id" : "_:genid4175", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4180", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid4183", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AdultOrientedEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4188", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] + } ] +}, { + "@id" : "_:genid419", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Flight" + } ] + } ] +}, { + "@id" : "_:genid4190", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4195", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Gene" + }, { + "@id" : "https://schema.org/Protein" + } ] + } ] +}, { + "@id" : "_:genid4198", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4202", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastService" + } ] + } ] +}, { + "@id" : "_:genid4204", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastChannel" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4209", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CategoryCodeSet" + } ] + } ] +}, { + "@id" : "_:genid421", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid4211", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CategoryCode" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4216", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid4222", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Certification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4227", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid4229", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Course" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4234", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Course" + } ] + } ] +}, { + "@id" : "_:genid4236", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CourseInstance" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4241", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid4244", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalCredential" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4249", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTermSet" + }, { + "@id" : "https://schema.org/Taxon" + } ] + } ] +}, { + "@id" : "_:genid4252", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4257", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryEvent" + }, { + "@id" : "https://schema.org/ParcelDelivery" + } ] + } ] +}, { + "@id" : "_:genid426", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicGroup" + } ] + } ] +}, { + "@id" : "_:genid4260", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryMethod" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4265", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DigitalDocument" + } ] + } ] +}, { + "@id" : "_:genid4267", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DigitalDocumentPermission" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4272", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid4274", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid4276", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid4278", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EnergyConsumptionDetails" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid428", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicAlbum" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4283", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EnergyConsumptionDetails" + } ] + } ] +}, { + "@id" : "_:genid4285", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EnergyEfficiencyEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4290", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthTopicContent" + } ] + } ] +}, { + "@id" : "_:genid4292", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthAspectEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4297", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid4299", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Map" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid43", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid4304", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Certification" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/SizeSpecification" + } ] + } ] +}, { + "@id" : "_:genid4309", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4314", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FoodEstablishment" + } ] + } ] +}, { + "@id" : "_:genid4316", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Menu" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4321", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Menu" + }, { + "@id" : "https://schema.org/MenuSection" + } ] + } ] +}, { + "@id" : "_:genid4324", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MenuItem" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4329", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Menu" + }, { + "@id" : "https://schema.org/MenuSection" + } ] + } ] +}, { + "@id" : "_:genid433", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicAlbum" + } ] + } ] +}, { + "@id" : "_:genid4332", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MenuSection" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4337", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid4341", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4346", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] + } ] +}, { + "@id" : "_:genid4348", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid435", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicAlbumProductionType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4354", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid4356", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Occupation" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4361", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid4365", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OfferCatalog" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4370", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid4373", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4378", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid4380", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4385", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid4388", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProductReturnPolicy" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4393", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] + } ] +}, { + "@id" : "_:genid4395", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid440", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicAlbum" + } ] + } ] +}, { + "@id" : "_:genid4400", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProductGroup" + } ] + } ] +}, { + "@id" : "_:genid4402", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4407", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid4409", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4413", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalStudy" + }, { + "@id" : "https://schema.org/Patient" + }, { + "@id" : "https://schema.org/PeopleAudience" + } ] + } ] +}, { + "@id" : "_:genid4417", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid442", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicRelease" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4422", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthPlanCostSharingSpecification" + } ] + } ] +}, { + "@id" : "_:genid4424", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4428", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthPlanCostSharingSpecification" + } ] + } ] +}, { + "@id" : "_:genid4430", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid4432", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthPlanCostSharingSpecification" + } ] + } ] +}, { + "@id" : "_:genid4434", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PriceSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4439", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthPlanCostSharingSpecification" + } ] + } ] +}, { + "@id" : "_:genid4441", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4445", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthPlanFormulary" + }, { + "@id" : "https://schema.org/HealthPlanNetwork" + } ] + } ] +}, { + "@id" : "_:genid4448", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid4450", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthInsurancePlan" + } ] + } ] +}, { + "@id" : "_:genid4452", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4456", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthInsurancePlan" + }, { + "@id" : "https://schema.org/HealthPlanFormulary" + } ] + } ] +}, { + "@id" : "_:genid4459", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4463", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthInsurancePlan" + } ] + } ] +}, { + "@id" : "_:genid4465", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4469", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthInsurancePlan" + } ] + } ] +}, { + "@id" : "_:genid447", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicAlbum" + } ] + } ] +}, { + "@id" : "_:genid4471", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4475", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthPlanNetwork" + }, { + "@id" : "https://schema.org/MedicalOrganization" + } ] + } ] +}, { + "@id" : "_:genid4478", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4482", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthPlanNetwork" + } ] + } ] +}, { + "@id" : "_:genid4484", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4488", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthPlanCostSharingSpecification" + } ] + } ] +}, { + "@id" : "_:genid449", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicAlbumReleaseType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4490", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4494", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Hospital" + } ] + } ] +}, { + "@id" : "_:genid4496", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CDCPMDRecord" + }, { + "@id" : "https://schema.org/Dataset" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4502", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/OfferShippingDetails" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/VisualArtwork" + } ] + } ] +}, { + "@id" : "_:genid4508", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Distance" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4514", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AggregateOffer" + } ] + } ] +}, { + "@id" : "_:genid4516", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4521", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid4523", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4529", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ArchiveComponent" + } ] + } ] +}, { + "@id" : "_:genid4531", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ArchiveOrganization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4536", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid4538", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid454", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicGroup" + } ] + } ] +}, { + "@id" : "_:genid4544", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SportsEvent" + } ] + } ] +}, { + "@id" : "_:genid4546", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SportsTeam" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4552", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid4554", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4558", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid456", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicAlbum" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4560", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4564", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Physician" + } ] + } ] +}, { + "@id" : "_:genid4566", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Hospital" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4571", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProgramMembership" + } ] + } ] +}, { + "@id" : "_:genid4573", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4578", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/LocationFeatureSpecification" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid4582", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OpeningHoursSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4587", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalProcedure" + } ] + } ] +}, { + "@id" : "_:genid4589", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4593", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EntryPoint" + } ] + } ] +}, { + "@id" : "_:genid4595", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4599", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Airline" + }, { + "@id" : "https://schema.org/Airport" + } ] + } ] +}, { + "@id" : "_:genid46", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LoanOrCredit" + }, { + "@id" : "https://schema.org/PaymentMethod" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4602", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4606", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Airport" + } ] + } ] +}, { + "@id" : "_:genid4608", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid461", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid4612", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Thing" + } ] + } ] +}, { + "@id" : "_:genid4614", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4619", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalSign" + } ] + } ] +}, { + "@id" : "_:genid4621", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PhysicalExam" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4626", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalSign" + } ] + } ] +}, { + "@id" : "_:genid4628", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTest" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid463", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4633", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Book" + } ] + } ] +}, { + "@id" : "_:genid4635", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4640", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Thing" + } ] + } ] +}, { + "@id" : "_:genid4642", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ImageObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4647", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ImagingTest" + } ] + } ] +}, { + "@id" : "_:genid4649", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalImagingTechnique" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4654", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicRecording" + } ] + } ] +}, { + "@id" : "_:genid4656", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicAlbum" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4661", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastChannel" + } ] + } ] +}, { + "@id" : "_:genid4663", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CableOrSatelliteService" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4668", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MolecularEntity" + } ] + } ] +}, { + "@id" : "_:genid467", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalRiskScore" + } ] + } ] +}, { + "@id" : "_:genid4670", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4674", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MolecularEntity" + } ] + } ] +}, { + "@id" : "_:genid4676", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4680", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CategoryCode" + } ] + } ] +}, { + "@id" : "_:genid4682", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CategoryCodeSet" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4687", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + } ] + } ] +}, { + "@id" : "_:genid4689", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTermSet" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid469", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4694", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastService" + }, { + "@id" : "https://schema.org/CommunicateAction" + }, { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/LinkRole" + }, { + "@id" : "https://schema.org/PronounceableText" + }, { + "@id" : "https://schema.org/WriteAction" + } ] + } ] +}, { + "@id" : "_:genid4702", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Language" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4707", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicRecording" + } ] + } ] +}, { + "@id" : "_:genid4709", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicPlaylist" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4714", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid4716", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4720", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid4722", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid4724", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Thesis" + } ] + } ] +}, { + "@id" : "_:genid4726", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid473", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AlignmentObject" + } ] + } ] +}, { + "@id" : "_:genid4730", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid4732", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4736", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid4738", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4742", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicComposition" + } ] + } ] +}, { + "@id" : "_:genid4744", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicComposition" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4749", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Dataset" + } ] + } ] +}, { + "@id" : "_:genid475", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4751", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DataCatalog" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4756", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Dataset" + } ] + } ] +}, { + "@id" : "_:genid4758", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DataCatalog" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4763", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid4765", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthInsurancePlan" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4770", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalRiskEstimator" + } ] + } ] +}, { + "@id" : "_:genid4772", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalRiskFactor" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4777", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/TouristDestination" + } ] + } ] +}, { + "@id" : "_:genid4779", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/TouristAttraction" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4784", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthInsurancePlan" + } ] + } ] +}, { + "@id" : "_:genid4786", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthPlanFormulary" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid479", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Thing" + } ] + } ] +}, { + "@id" : "_:genid4791", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthInsurancePlan" + } ] + } ] +}, { + "@id" : "_:genid4793", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthPlanNetwork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4798", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/ProductCollection" + } ] + } ] +}, { + "@id" : "_:genid4802", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/TypeAndQuantityNode" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4807", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalRiskFactor" + } ] + } ] +}, { + "@id" : "_:genid4809", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid481", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4814", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid4816", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4821", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ActionAccessSpecification" + }, { + "@id" : "https://schema.org/DeliveryChargeSpecification" + }, { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid4827", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeoShape" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4833", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/InfectiousDisease" + } ] + } ] +}, { + "@id" : "_:genid4835", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4839", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/InfectiousDisease" + } ] + } ] +}, { + "@id" : "_:genid4841", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/InfectiousAgentClass" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4846", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Recipe" + } ] + } ] +}, { + "@id" : "_:genid4848", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid485", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid4852", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ComicIssue" + }, { + "@id" : "https://schema.org/ComicStory" + }, { + "@id" : "https://schema.org/VisualArtwork" + } ] + } ] +}, { + "@id" : "_:genid4856", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4861", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Muscle" + } ] + } ] +}, { + "@id" : "_:genid4863", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4868", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid487", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4870", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4874", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CourseInstance" + } ] + } ] +}, { + "@id" : "_:genid4876", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4881", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Action" + } ] + } ] +}, { + "@id" : "_:genid4883", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4888", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExercisePlan" + } ] + } ] +}, { + "@id" : "_:genid4890", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4895", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid4897", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4902", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/InteractionCounter" + } ] + } ] +}, { + "@id" : "_:genid4904", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SoftwareApplication" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebSite" + } ] + } ] +}, { + "@id" : "_:genid491", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Gene" + } ] + } ] +}, { + "@id" : "_:genid4910", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid4914", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/InteractionCounter" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4919", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/InteractionCounter" + } ] + } ] +}, { + "@id" : "_:genid4921", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Action" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4926", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid4928", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid493", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Gene" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4932", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FinancialProduct" + } ] + } ] +}, { + "@id" : "_:genid4934", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4940", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/MediaObject" + } ] + } ] +}, { + "@id" : "_:genid4943", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Claim" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4948", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/SomeProducts" + } ] + } ] +}, { + "@id" : "_:genid4952", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4957", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Property" + } ] + } ] +}, { + "@id" : "_:genid4959", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Property" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4964", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalOrganization" + } ] + } ] +}, { + "@id" : "_:genid4966", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid4968", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid4972", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid4974", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid4976", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid498", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOrganization" + }, { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid4981", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid4983", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid4985", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid4987", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid4993", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid4995", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5001", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid5003", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5008", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] + } ] +}, { + "@id" : "_:genid501", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5010", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Gene" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5015", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid5019", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid5021", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid5023", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid5025", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] + } ] +}, { + "@id" : "_:genid5027", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5033", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastEvent" + } ] + } ] +}, { + "@id" : "_:genid5035", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid5037", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] + } ] +}, { + "@id" : "_:genid5039", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5045", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid5047", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5052", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] + } ] +}, { + "@id" : "_:genid5054", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5059", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FloorPlan" + } ] + } ] +}, { + "@id" : "_:genid506", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid5061", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5066", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DietarySupplement" + }, { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid5069", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid5071", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid5074", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Service" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid508", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOrganization" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5080", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/3DModel" + } ] + } ] +}, { + "@id" : "_:genid5082", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid5084", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid5087", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Service" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5093", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryTimeSettings" + }, { + "@id" : "https://schema.org/ShippingRateSettings" + } ] + } ] +}, { + "@id" : "_:genid5096", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid5098", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/ProductModel" + } ] + } ] +}, { + "@id" : "_:genid5101", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProductGroup" + }, { + "@id" : "https://schema.org/ProductModel" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5107", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Book" + } ] + } ] +}, { + "@id" : "_:genid5109", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5113", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid5117", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5121", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid5123", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5127", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicRecording" + } ] + } ] +}, { + "@id" : "_:genid5129", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5133", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Blog" + }, { + "@id" : "https://schema.org/CreativeWorkSeries" + }, { + "@id" : "https://schema.org/Dataset" + }, { + "@id" : "https://schema.org/WebSite" + } ] + } ] +}, { + "@id" : "_:genid5138", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid514", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + }, { + "@id" : "https://schema.org/FloorPlan" + }, { + "@id" : "https://schema.org/LodgingBusiness" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid5142", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PublicationIssue" + } ] + } ] +}, { + "@id" : "_:genid5144", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5149", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Certification" + }, { + "@id" : "https://schema.org/Permit" + }, { + "@id" : "https://schema.org/Ticket" + } ] + } ] +}, { + "@id" : "_:genid5153", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5158", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Permit" + } ] + } ] +}, { + "@id" : "_:genid5160", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Service" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5165", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicComposition" + } ] + } ] +}, { + "@id" : "_:genid5167", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5171", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DataFeedItem" + }, { + "@id" : "https://schema.org/ListItem" + } ] + } ] +}, { + "@id" : "_:genid5174", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5179", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/MerchantReturnPolicy" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid5184", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OfferItemCondition" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5189", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid519", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LocationFeatureSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5191", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ReturnFeesEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5196", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid5198", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ReturnLabelSourceEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid52", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FoodEstablishment" + } ] + } ] +}, { + "@id" : "_:genid5203", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid5205", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5210", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ItemList" + } ] + } ] +}, { + "@id" : "_:genid5212", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ListItem" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5218", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ItemList" + } ] + } ] +}, { + "@id" : "_:genid5220", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ItemListOrderType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5225", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ArchiveComponent" + } ] + } ] +}, { + "@id" : "_:genid5227", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/PostalAddress" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5233", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid5236", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AggregateOffer" + }, { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/MenuItem" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Service" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Trip" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid524", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DatedMoneySpecification" + }, { + "@id" : "https://schema.org/InvestmentOrDeposit" + }, { + "@id" : "https://schema.org/LoanOrCredit" + }, { + "@id" : "https://schema.org/MonetaryGrant" + }, { + "@id" : "https://schema.org/MoneyTransfer" + } ] + } ] +}, { + "@id" : "_:genid5247", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AggregateRating" + }, { + "@id" : "https://schema.org/Review" + } ] + } ] +}, { + "@id" : "_:genid5250", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5255", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ParcelDelivery" + } ] + } ] +}, { + "@id" : "_:genid5257", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5262", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Trip" + } ] + } ] +}, { + "@id" : "_:genid5264", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ItemList" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5270", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MolecularEntity" + } ] + } ] +}, { + "@id" : "_:genid5272", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5276", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid5278", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5282", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid5284", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid5286", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid5288", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5293", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid5295", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5299", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid530", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5301", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5306", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid5308", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5313", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GovernmentService" + }, { + "@id" : "https://schema.org/Legislation" + } ] + } ] +}, { + "@id" : "_:genid5316", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AdministrativeArea" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5321", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid5327", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5332", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid5334", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5338", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid5340", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5345", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid5348", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5353", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid5356", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Language" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid536", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/TypeAndQuantityNode" + } ] + } ] +}, { + "@id" : "_:genid5361", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid5363", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5367", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RentAction" + } ] + } ] +}, { + "@id" : "_:genid5369", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5375", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CommunicateAction" + }, { + "@id" : "https://schema.org/WriteAction" + } ] + } ] +}, { + "@id" : "_:genid5378", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Language" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid538", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid5383", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/WebPage" + } ] + } ] +}, { + "@id" : "_:genid5385", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid5387", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeoCoordinates" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid5390", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5395", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FloorPlan" + } ] + } ] +}, { + "@id" : "_:genid5397", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ImageObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid54", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid540", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SpecialAnnouncement" + } ] + } ] +}, { + "@id" : "_:genid5402", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/LearningResource" + } ] + } ] +}, { + "@id" : "_:genid5405", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5410", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/RealEstateListing" + } ] + } ] +}, { + "@id" : "_:genid5414", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid542", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CivicStructure" + }, { + "@id" : "https://schema.org/LocalBusiness" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5420", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid5422", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5426", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DietarySupplement" + }, { + "@id" : "https://schema.org/Drug" + }, { + "@id" : "https://schema.org/MedicalEntity" + } ] + } ] +}, { + "@id" : "_:genid5430", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugLegalStatus" + }, { + "@id" : "https://schema.org/MedicalEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5436", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + } ] + } ] +}, { + "@id" : "_:genid5438", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5443", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + } ] + } ] +}, { + "@id" : "_:genid5445", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5450", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + } ] + } ] +}, { + "@id" : "_:genid5452", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5457", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + } ] + } ] +}, { + "@id" : "_:genid5459", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid5461", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + } ] + } ] +}, { + "@id" : "_:genid5463", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid5465", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + } ] + } ] +}, { + "@id" : "_:genid5467", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5471", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + } ] + } ] +}, { + "@id" : "_:genid5473", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AdministrativeArea" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5478", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + } ] + } ] +}, { + "@id" : "_:genid548", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FinancialProduct" + } ] + } ] +}, { + "@id" : "_:genid5480", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LegalForceStatus" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5485", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LegislationObject" + } ] + } ] +}, { + "@id" : "_:genid5487", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LegalValueLevel" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5492", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + } ] + } ] +}, { + "@id" : "_:genid5494", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid550", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5500", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + } ] + } ] +}, { + "@id" : "_:genid5502", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5508", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + } ] + } ] +}, { + "@id" : "_:genid5510", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5515", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Legislation" + } ] + } ] +}, { + "@id" : "_:genid5517", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CategoryCode" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5522", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid5524", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5528", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BorrowAction" + } ] + } ] +}, { + "@id" : "_:genid5530", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5536", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + } ] + } ] +}, { + "@id" : "_:genid5538", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5543", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + } ] + } ] +}, { + "@id" : "_:genid5545", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5550", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ComicIssue" + }, { + "@id" : "https://schema.org/ComicStory" + }, { + "@id" : "https://schema.org/VisualArtwork" + } ] + } ] +}, { + "@id" : "_:genid5554", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5559", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid556", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Question" + } ] + } ] +}, { + "@id" : "_:genid5561", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5566", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeoShape" + } ] + } ] +}, { + "@id" : "_:genid5568", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5572", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LinkRole" + } ] + } ] +}, { + "@id" : "_:genid5574", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5578", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LiveBlogPosting" + } ] + } ] +}, { + "@id" : "_:genid558", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid5580", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BlogPosting" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5585", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MortgageLoan" + } ] + } ] +}, { + "@id" : "_:genid5587", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5592", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RepaymentSpecification" + } ] + } ] +}, { + "@id" : "_:genid5594", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5599", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RepaymentSpecification" + } ] + } ] +}, { + "@id" : "_:genid560", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Answer" + } ] + } ] +}, { + "@id" : "_:genid5601", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid5603", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LoanOrCredit" + } ] + } ] +}, { + "@id" : "_:genid5605", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RepaymentSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5610", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LoanOrCredit" + } ] + } ] +}, { + "@id" : "_:genid5612", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5617", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LoanOrCredit" + } ] + } ] +}, { + "@id" : "_:genid5619", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid562", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Comment" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebContent" + } ] + } ] +}, { + "@id" : "_:genid5623", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Action" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/InteractionCounter" + }, { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid5628", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/PostalAddress" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/VirtualLocation" + } ] + } ] +}, { + "@id" : "_:genid5635", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid5637", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5642", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LodgingReservation" + } ] + } ] +}, { + "@id" : "_:genid5644", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5648", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LodgingReservation" + } ] + } ] +}, { + "@id" : "_:genid5650", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5655", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Brand" + }, { + "@id" : "https://schema.org/Certification" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid5662", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ImageObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5667", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeoCoordinates" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid5670", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5675", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/WinAction" + } ] + } ] +}, { + "@id" : "_:genid5677", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid568", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Muscle" + } ] + } ] +}, { + "@id" : "_:genid5682", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AggregateOffer" + } ] + } ] +}, { + "@id" : "_:genid5684", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5689", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicComposition" + } ] + } ] +}, { + "@id" : "_:genid5691", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5696", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicComposition" + } ] + } ] +}, { + "@id" : "_:genid5698", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid570", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Muscle" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5703", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/WebPage" + } ] + } ] +}, { + "@id" : "_:genid5705", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebPageElement" + } ] + } ] +}, { + "@id" : "_:genid5710", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid5712", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5717", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Thing" + } ] + } ] +}, { + "@id" : "_:genid5719", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5724", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid5726", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5732", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid5735", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5740", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid5742", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5747", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid5749", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid575", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Claim" + } ] + } ] +}, { + "@id" : "_:genid5753", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Map" + } ] + } ] +}, { + "@id" : "_:genid5755", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MapCategoryType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5760", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid5762", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5766", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Observation" + } ] + } ] +}, { + "@id" : "_:genid5768", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid577", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5773", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsMediaOrganization" + } ] + } ] +}, { + "@id" : "_:genid5775", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5780", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid5783", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5788", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid5790", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5795", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MathSolver" + } ] + } ] +}, { + "@id" : "_:genid5797", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SolveMathAction" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5802", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid5804", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid5806", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/PropertyValueSpecification" + }, { + "@id" : "https://schema.org/QuantitativeValue" + } ] + } ] +}, { + "@id" : "_:genid5811", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid5813", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid5816", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid5818", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid582", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid5820", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid5822", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DietarySupplement" + }, { + "@id" : "https://schema.org/Drug" + }, { + "@id" : "https://schema.org/DrugStrength" + }, { + "@id" : "https://schema.org/Substance" + } ] + } ] +}, { + "@id" : "_:genid5827", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MaximumDoseSchedule" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5832", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid5834", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid5836", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid5838", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid584", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Country" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5840", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Flight" + } ] + } ] +}, { + "@id" : "_:genid5842", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5846", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Observation" + }, { + "@id" : "https://schema.org/StatisticalVariable" + } ] + } ] +}, { + "@id" : "_:genid5849", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Property" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5854", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Observation" + }, { + "@id" : "https://schema.org/StatisticalVariable" + } ] + } ] +}, { + "@id" : "_:genid5857", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/StatisticalVariable" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5862", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DataCatalog" + }, { + "@id" : "https://schema.org/DataDownload" + }, { + "@id" : "https://schema.org/Dataset" + }, { + "@id" : "https://schema.org/Observation" + }, { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/StatisticalVariable" + } ] + } ] +}, { + "@id" : "_:genid5869", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/MeasurementMethodEnum" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5875", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Observation" + }, { + "@id" : "https://schema.org/StatisticalVariable" + } ] + } ] +}, { + "@id" : "_:genid5878", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Enumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5883", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DataCatalog" + }, { + "@id" : "https://schema.org/DataDownload" + }, { + "@id" : "https://schema.org/Dataset" + }, { + "@id" : "https://schema.org/Observation" + }, { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/StatisticalVariable" + } ] + } ] +}, { + "@id" : "_:genid589", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugCost" + }, { + "@id" : "https://schema.org/DrugLegalStatus" + } ] + } ] +}, { + "@id" : "_:genid5890", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/MeasurementMethodEnum" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5896", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DietarySupplement" + }, { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid5899", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid59", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryEvent" + } ] + } ] +}, { + "@id" : "_:genid5903", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaReview" + } ] + } ] +}, { + "@id" : "_:genid5905", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaManipulationRatingEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5910", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaReviewItem" + } ] + } ] +}, { + "@id" : "_:genid5912", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5917", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValueDistribution" + } ] + } ] +}, { + "@id" : "_:genid5919", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid592", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AdministrativeArea" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5921", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalWebPage" + } ] + } ] +}, { + "@id" : "_:genid5923", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalAudience" + }, { + "@id" : "https://schema.org/MedicalAudienceType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5929", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Hospital" + }, { + "@id" : "https://schema.org/MedicalClinic" + }, { + "@id" : "https://schema.org/MedicalOrganization" + }, { + "@id" : "https://schema.org/Physician" + } ] + } ] +}, { + "@id" : "_:genid5934", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalSpecialty" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5939", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] + } ] +}, { + "@id" : "_:genid5941", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicineSystem" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5946", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid5948", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5953", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/ProgramMembership" + } ] + } ] +}, { + "@id" : "_:genid5956", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5962", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid5965", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/ProgramMembership" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid597", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid5971", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/ProgramMembership" + } ] + } ] +}, { + "@id" : "_:genid5974", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5980", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProgramMembership" + } ] + } ] +}, { + "@id" : "_:genid5982", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5986", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProgramMembership" + } ] + } ] +}, { + "@id" : "_:genid5988", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid599", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AdministrativeArea" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid5994", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid5996", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6000", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid6002", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6007", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FoodEstablishment" + } ] + } ] +}, { + "@id" : "_:genid6009", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Menu" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6014", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MenuItem" + } ] + } ] +}, { + "@id" : "_:genid6016", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MenuItem" + }, { + "@id" : "https://schema.org/MenuSection" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6022", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid6024", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6030", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + }, { + "@id" : "https://schema.org/MerchantReturnPolicySeasonalOverride" + } ] + } ] +}, { + "@id" : "_:genid6033", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + }, { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid6037", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid6039", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid604", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EntryPoint" + } ] + } ] +}, { + "@id" : "_:genid6043", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Message" + } ] + } ] +}, { + "@id" : "_:genid6045", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6050", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid6052", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6057", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid6059", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid606", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SoftwareApplication" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6061", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/PropertyValueSpecification" + }, { + "@id" : "https://schema.org/QuantitativeValue" + } ] + } ] +}, { + "@id" : "_:genid6066", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid6068", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + } ] + } ] +}, { + "@id" : "_:genid6070", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/PriceSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6076", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsMediaOrganization" + } ] + } ] +}, { + "@id" : "_:genid6078", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6083", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid6086", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6090", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid6092", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProductModel" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6097", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid6099", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid61", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6101", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Reservation" + } ] + } ] +}, { + "@id" : "_:genid6103", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid6105", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MolecularEntity" + } ] + } ] +}, { + "@id" : "_:genid6107", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid611", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid6111", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MolecularEntity" + } ] + } ] +}, { + "@id" : "_:genid6113", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6118", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MolecularEntity" + } ] + } ] +}, { + "@id" : "_:genid6120", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6125", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PaymentCard" + } ] + } ] +}, { + "@id" : "_:genid6127", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid613", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6133", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OccupationalExperienceRequirements" + } ] + } ] +}, { + "@id" : "_:genid6135", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid6137", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid6141", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6145", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValueSpecification" + } ] + } ] +}, { + "@id" : "_:genid6147", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid6149", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Muscle" + } ] + } ] +}, { + "@id" : "_:genid6151", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6155", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicComposition" + } ] + } ] +}, { + "@id" : "_:genid6157", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicComposition" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6162", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Clip" + }, { + "@id" : "https://schema.org/Episode" + }, { + "@id" : "https://schema.org/Movie" + }, { + "@id" : "https://schema.org/MovieSeries" + }, { + "@id" : "https://schema.org/RadioSeries" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/VideoGame" + }, { + "@id" : "https://schema.org/VideoGameSeries" + }, { + "@id" : "https://schema.org/VideoObject" + } ] + } ] +}, { + "@id" : "_:genid617", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid6172", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicGroup" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6178", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicComposition" + } ] + } ] +}, { + "@id" : "_:genid6180", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6184", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicGroup" + } ] + } ] +}, { + "@id" : "_:genid6186", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid619", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6191", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicRelease" + } ] + } ] +}, { + "@id" : "_:genid6193", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicReleaseFormatType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6198", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicComposition" + } ] + } ] +}, { + "@id" : "_:genid6200", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6204", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid6207", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6211", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Thing" + } ] + } ] +}, { + "@id" : "_:genid6213", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6217", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + } ] + } ] +}, { + "@id" : "_:genid6219", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6223", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid6225", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Country" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6230", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + } ] + } ] +}, { + "@id" : "_:genid6232", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6236", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Review" + } ] + } ] +}, { + "@id" : "_:genid6239", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ItemList" + }, { + "@id" : "https://schema.org/ListItem" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebContent" + } ] + } ] +}, { + "@id" : "_:genid624", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid6246", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Muscle" + } ] + } ] +}, { + "@id" : "_:genid6248", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Nerve" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6253", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Nerve" + } ] + } ] +}, { + "@id" : "_:genid6255", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Muscle" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid626", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid6260", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid6262", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/PriceSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6268", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SpecialAnnouncement" + } ] + } ] +}, { + "@id" : "_:genid6270", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebContent" + } ] + } ] +}, { + "@id" : "_:genid6275", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ListItem" + } ] + } ] +}, { + "@id" : "_:genid6277", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ListItem" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid628", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid6282", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsMediaOrganization" + } ] + } ] +}, { + "@id" : "_:genid6284", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6289", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + } ] + } ] +}, { + "@id" : "_:genid6291", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6296", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DietarySupplement" + }, { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid6299", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid630", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid6303", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid6305", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NonprofitType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6310", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTest" + } ] + } ] +}, { + "@id" : "_:genid6312", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6317", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid6319", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid632", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid6323", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LodgingReservation" + } ] + } ] +}, { + "@id" : "_:genid6325", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6331", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LodgingReservation" + } ] + } ] +}, { + "@id" : "_:genid6333", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6339", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ConstraintNode" + } ] + } ] +}, { + "@id" : "_:genid634", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6341", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid6343", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicPlaylist" + } ] + } ] +}, { + "@id" : "_:genid6345", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid6347", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ApartmentComplex" + }, { + "@id" : "https://schema.org/FloorPlan" + } ] + } ] +}, { + "@id" : "_:genid6350", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6355", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid6357", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6362", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ApartmentComplex" + }, { + "@id" : "https://schema.org/FloorPlan" + } ] + } ] +}, { + "@id" : "_:genid6365", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6370", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid6372", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6378", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + }, { + "@id" : "https://schema.org/FloorPlan" + } ] + } ] +}, { + "@id" : "_:genid638", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid6381", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid6383", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + }, { + "@id" : "https://schema.org/ApartmentComplex" + }, { + "@id" : "https://schema.org/FloorPlan" + } ] + } ] +}, { + "@id" : "_:genid6387", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6393", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BedDetails" + } ] + } ] +}, { + "@id" : "_:genid6395", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid6397", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Course" + }, { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid640", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6400", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/StructuredValue" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6406", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid6408", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6414", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BusinessAudience" + }, { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid6417", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6422", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + }, { + "@id" : "https://schema.org/RadioSeries" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid6427", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid6429", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid6431", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6437", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + }, { + "@id" : "https://schema.org/FloorPlan" + } ] + } ] +}, { + "@id" : "_:genid644", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryChargeSpecification" + }, { + "@id" : "https://schema.org/PaymentChargeSpecification" + } ] + } ] +}, { + "@id" : "_:genid6440", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid6442", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ItemList" + } ] + } ] +}, { + "@id" : "_:genid6444", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid6446", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RepaymentSpecification" + } ] + } ] +}, { + "@id" : "_:genid6448", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid6450", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Book" + } ] + } ] +}, { + "@id" : "_:genid6452", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid6454", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + }, { + "@id" : "https://schema.org/FloorPlan" + } ] + } ] +}, { + "@id" : "_:genid6457", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid6459", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Game" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid6462", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6467", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid6469", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid647", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryMethod" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6475", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + }, { + "@id" : "https://schema.org/Apartment" + }, { + "@id" : "https://schema.org/FloorPlan" + }, { + "@id" : "https://schema.org/House" + }, { + "@id" : "https://schema.org/LodgingBusiness" + }, { + "@id" : "https://schema.org/SingleFamilyResidence" + }, { + "@id" : "https://schema.org/Suite" + } ] + } ] +}, { + "@id" : "_:genid6483", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6489", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RadioSeries" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid6493", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid6495", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OrganizationRole" + } ] + } ] +}, { + "@id" : "_:genid6497", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid6499", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MenuItem" + }, { + "@id" : "https://schema.org/Recipe" + } ] + } ] +}, { + "@id" : "_:genid65", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid6502", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NutritionInformation" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6507", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Action" + } ] + } ] +}, { + "@id" : "_:genid6509", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6514", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Observation" + } ] + } ] +}, { + "@id" : "_:genid6516", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid652", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PaymentChargeSpecification" + } ] + } ] +}, { + "@id" : "_:genid6522", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Observation" + } ] + } ] +}, { + "@id" : "_:genid6524", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid6526", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Observation" + } ] + } ] +}, { + "@id" : "_:genid6528", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6532", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + }, { + "@id" : "https://schema.org/Apartment" + }, { + "@id" : "https://schema.org/HotelRoom" + }, { + "@id" : "https://schema.org/SingleFamilyResidence" + }, { + "@id" : "https://schema.org/Suite" + } ] + } ] +}, { + "@id" : "_:genid6538", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid654", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PaymentMethod" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6543", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Occupation" + } ] + } ] +}, { + "@id" : "_:genid6545", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AdministrativeArea" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6550", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + }, { + "@id" : "https://schema.org/JobPosting" + }, { + "@id" : "https://schema.org/Occupation" + }, { + "@id" : "https://schema.org/Physician" + }, { + "@id" : "https://schema.org/WorkBasedProgram" + } ] + } ] +}, { + "@id" : "_:genid6556", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CategoryCode" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6561", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Course" + }, { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid6564", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalCredential" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6569", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AggregateOffer" + } ] + } ] +}, { + "@id" : "_:genid6571", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid6573", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid6575", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6581", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AggregateOffer" + }, { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/EducationalOccupationalProgram" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/MenuItem" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Service" + }, { + "@id" : "https://schema.org/Trip" + } ] + } ] +}, { + "@id" : "_:genid659", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ArchiveOrganization" + } ] + } ] +}, { + "@id" : "_:genid6590", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6596", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthPlanFormulary" + } ] + } ] +}, { + "@id" : "_:genid6598", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid6600", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CivicStructure" + }, { + "@id" : "https://schema.org/LocalBusiness" + } ] + } ] +}, { + "@id" : "_:genid6603", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6607", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid6609", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OpeningHoursSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid661", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ArchiveComponent" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6614", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OpeningHoursSpecification" + } ] + } ] +}, { + "@id" : "_:genid6616", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Time" + } ] + } ] +}, { + "@id" : "_:genid6618", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid6620", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6624", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExerciseAction" + } ] + } ] +}, { + "@id" : "_:genid6626", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6631", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ChooseAction" + } ] + } ] +}, { + "@id" : "_:genid6633", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6638", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid6640", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid6643", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + }, { + "@id" : "https://schema.org/OrderItem" + } ] + } ] +}, { + "@id" : "_:genid6646", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ParcelDelivery" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6651", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OrderItem" + } ] + } ] +}, { + "@id" : "_:genid6653", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6657", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OrderItem" + } ] + } ] +}, { + "@id" : "_:genid6659", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OrderStatus" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid666", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid6664", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid6666", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6670", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OrderItem" + } ] + } ] +}, { + "@id" : "_:genid6672", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid6674", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid6676", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OrderStatus" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid668", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebPage" + } ] + } ] +}, { + "@id" : "_:genid6681", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + }, { + "@id" : "https://schema.org/OrderItem" + } ] + } ] +}, { + "@id" : "_:genid6684", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OrderItem" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Service" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6691", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid6693", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6699", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ParcelDelivery" + } ] + } ] +}, { + "@id" : "_:genid67", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6701", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PostalAddress" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6706", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaReview" + } ] + } ] +}, { + "@id" : "_:genid6708", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6712", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaReview" + } ] + } ] +}, { + "@id" : "_:genid6714", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebPage" + } ] + } ] +}, { + "@id" : "_:genid6720", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LymphaticVessel" + } ] + } ] +}, { + "@id" : "_:genid6722", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/Vessel" + } ] + } ] +}, { + "@id" : "_:genid6727", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid6729", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid673", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastService" + } ] + } ] +}, { + "@id" : "_:genid6733", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OwnershipInfo" + } ] + } ] +}, { + "@id" : "_:genid6735", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid6737", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OwnershipInfo" + } ] + } ] +}, { + "@id" : "_:genid6739", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid6741", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsMediaOrganization" + }, { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid6744", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AboutPage" + }, { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid675", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6750", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid6753", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OwnershipInfo" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6759", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Article" + }, { + "@id" : "https://schema.org/Chapter" + }, { + "@id" : "https://schema.org/PublicationIssue" + }, { + "@id" : "https://schema.org/PublicationVolume" + } ] + } ] +}, { + "@id" : "_:genid6764", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6769", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Article" + }, { + "@id" : "https://schema.org/Chapter" + }, { + "@id" : "https://schema.org/PublicationIssue" + }, { + "@id" : "https://schema.org/PublicationVolume" + } ] + } ] +}, { + "@id" : "_:genid6774", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6779", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Article" + }, { + "@id" : "https://schema.org/Chapter" + }, { + "@id" : "https://schema.org/PublicationIssue" + }, { + "@id" : "https://schema.org/PublicationVolume" + } ] + } ] +}, { + "@id" : "_:genid6784", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6788", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid6790", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6795", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Answer" + }, { + "@id" : "https://schema.org/Comment" + }, { + "@id" : "https://schema.org/Question" + } ] + } ] +}, { + "@id" : "_:genid6799", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Comment" + }, { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid680", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/DeliveryChargeSpecification" + }, { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid6805", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid6807", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6812", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastService" + } ] + } ] +}, { + "@id" : "_:genid6814", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastService" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6819", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Taxon" + } ] + } ] +}, { + "@id" : "_:genid6821", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Taxon" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6826", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid6828", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6833", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Clip" + } ] + } ] +}, { + "@id" : "_:genid6835", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Episode" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6840", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid6842", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6847", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ParcelDelivery" + } ] + } ] +}, { + "@id" : "_:genid6849", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6854", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Clip" + }, { + "@id" : "https://schema.org/Episode" + } ] + } ] +}, { + "@id" : "_:genid6857", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6862", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Clip" + }, { + "@id" : "https://schema.org/CreativeWorkSeason" + }, { + "@id" : "https://schema.org/Episode" + } ] + } ] +}, { + "@id" : "_:genid6866", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWorkSeries" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid687", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AdministrativeArea" + }, { + "@id" : "https://schema.org/GeoShape" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6871", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + } ] + } ] +}, { + "@id" : "_:genid6873", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalSystem" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6878", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/TVClip" + }, { + "@id" : "https://schema.org/TVEpisode" + }, { + "@id" : "https://schema.org/TVSeason" + } ] + } ] +}, { + "@id" : "_:genid6882", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6887", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Trip" + } ] + } ] +}, { + "@id" : "_:genid6889", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Trip" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6894", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Action" + } ] + } ] +}, { + "@id" : "_:genid6896", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6902", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FoodEstablishmentReservation" + }, { + "@id" : "https://schema.org/TaxiReservation" + } ] + } ] +}, { + "@id" : "_:genid6905", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6911", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FlightReservation" + } ] + } ] +}, { + "@id" : "_:genid6913", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6918", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FlightReservation" + } ] + } ] +}, { + "@id" : "_:genid6920", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6924", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + }, { + "@id" : "https://schema.org/PhysicalActivity" + } ] + } ] +}, { + "@id" : "_:genid6927", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6931", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid6934", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6939", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid694", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Flight" + } ] + } ] +}, { + "@id" : "_:genid6941", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6946", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] + } ] +}, { + "@id" : "_:genid6948", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6952", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + }, { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid6955", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid6957", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + }, { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid696", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Airport" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6960", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid6963", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + }, { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid6966", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PaymentMethod" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6971", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + }, { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid6974", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6978", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + } ] + } ] +}, { + "@id" : "_:genid6980", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PaymentStatusType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6985", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid6987", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid6991", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ComicIssue" + }, { + "@id" : "https://schema.org/ComicStory" + }, { + "@id" : "https://schema.org/VisualArtwork" + } ] + } ] +}, { + "@id" : "_:genid6995", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7000", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValueDistribution" + } ] + } ] +}, { + "@id" : "_:genid7002", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid7004", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValueDistribution" + } ] + } ] +}, { + "@id" : "_:genid7006", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid7008", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValueDistribution" + } ] + } ] +}, { + "@id" : "_:genid701", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BoatTrip" + } ] + } ] +}, { + "@id" : "_:genid7010", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid7012", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValueDistribution" + } ] + } ] +}, { + "@id" : "_:genid7014", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid7016", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowTo" + }, { + "@id" : "https://schema.org/HowToDirection" + } ] + } ] +}, { + "@id" : "_:genid7019", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7024", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid7026", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid703", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BoatTerminal" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7032", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid7034", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7039", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid7041", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7047", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DigitalDocumentPermission" + } ] + } ] +}, { + "@id" : "_:genid7049", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DigitalDocumentPermissionType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7054", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid7056", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7060", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Permit" + } ] + } ] +}, { + "@id" : "_:genid7062", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Audience" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7067", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + } ] + } ] +}, { + "@id" : "_:genid7069", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7073", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + }, { + "@id" : "https://schema.org/ApartmentComplex" + }, { + "@id" : "https://schema.org/FloorPlan" + }, { + "@id" : "https://schema.org/LodgingBusiness" + } ] + } ] +}, { + "@id" : "_:genid7078", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid708", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BusTrip" + } ] + } ] +}, { + "@id" : "_:genid7083", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PronounceableText" + } ] + } ] +}, { + "@id" : "_:genid7085", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7089", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid7091", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ImageObject" + }, { + "@id" : "https://schema.org/Photograph" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7097", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid7099", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ImageObject" + }, { + "@id" : "https://schema.org/Photograph" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid71", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid710", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BusStation" + }, { + "@id" : "https://schema.org/BusStop" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7105", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid7107", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7112", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Diet" + } ] + } ] +}, { + "@id" : "_:genid7114", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7118", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RentalCarReservation" + }, { + "@id" : "https://schema.org/TaxiReservation" + } ] + } ] +}, { + "@id" : "_:genid7121", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7126", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RentalCarReservation" + }, { + "@id" : "https://schema.org/TaxiReservation" + } ] + } ] +}, { + "@id" : "_:genid7129", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid7131", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/VideoGame" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid7134", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GamePlayMode" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7139", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + } ] + } ] +}, { + "@id" : "_:genid7141", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7145", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GameServer" + } ] + } ] +}, { + "@id" : "_:genid7147", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid7149", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GeoShape" + } ] + } ] +}, { + "@id" : "_:genid7151", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7155", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/StatisticalPopulation" + }, { + "@id" : "https://schema.org/StatisticalVariable" + } ] + } ] +}, { + "@id" : "_:genid7158", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Class" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid716", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Flight" + } ] + } ] +}, { + "@id" : "_:genid7163", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/ListItem" + } ] + } ] +}, { + "@id" : "_:genid7166", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7171", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Review" + } ] + } ] +}, { + "@id" : "_:genid7174", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ItemList" + }, { + "@id" : "https://schema.org/ListItem" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebContent" + } ] + } ] +}, { + "@id" : "_:genid718", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7181", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + } ] + } ] +}, { + "@id" : "_:genid7183", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7187", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + }, { + "@id" : "https://schema.org/MedicalSignOrSymptom" + } ] + } ] +}, { + "@id" : "_:genid7190", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTherapy" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7195", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PostalAddress" + } ] + } ] +}, { + "@id" : "_:genid7197", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7201", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalDevice" + } ] + } ] +}, { + "@id" : "_:genid7203", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7207", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedRegion" + }, { + "@id" : "https://schema.org/GeoCoordinates" + }, { + "@id" : "https://schema.org/GeoShape" + }, { + "@id" : "https://schema.org/PostalAddress" + } ] + } ] +}, { + "@id" : "_:genid7212", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7216", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PostalCodeRangeSpecification" + } ] + } ] +}, { + "@id" : "_:genid7218", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid722", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/TrainTrip" + } ] + } ] +}, { + "@id" : "_:genid7222", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PostalCodeRangeSpecification" + } ] + } ] +}, { + "@id" : "_:genid7224", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7228", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedRegion" + } ] + } ] +}, { + "@id" : "_:genid7230", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7234", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedRegion" + } ] + } ] +}, { + "@id" : "_:genid7236", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PostalCodeRangeSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid724", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7241", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Thing" + } ] + } ] +}, { + "@id" : "_:genid7243", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Action" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7248", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ChemicalSubstance" + }, { + "@id" : "https://schema.org/MolecularEntity" + } ] + } ] +}, { + "@id" : "_:genid7251", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7256", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/IndividualPhysician" + } ] + } ] +}, { + "@id" : "_:genid7258", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalOrganization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7263", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalDevice" + } ] + } ] +}, { + "@id" : "_:genid7265", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7269", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProductModel" + } ] + } ] +}, { + "@id" : "_:genid7271", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProductModel" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7276", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid7278", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugPregnancyCategory" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid728", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/TrainTrip" + } ] + } ] +}, { + "@id" : "_:genid7283", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid7285", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7289", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowTo" + }, { + "@id" : "https://schema.org/HowToDirection" + } ] + } ] +}, { + "@id" : "_:genid7292", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7297", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalProcedure" + } ] + } ] +}, { + "@id" : "_:genid7299", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid73", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ItemList" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid730", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/TrainStation" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7304", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid7306", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7310", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid7312", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugPrescriptionStatus" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7317", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ListItem" + } ] + } ] +}, { + "@id" : "_:genid7319", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ListItem" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7324", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid7326", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid7328", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/PriceSpecification" + }, { + "@id" : "https://schema.org/TradeAction" + } ] + } ] +}, { + "@id" : "_:genid7332", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7337", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CompoundPriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid7339", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/UnitPriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid7344", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/UnitPriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid7346", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PriceComponentTypeEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid735", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Flight" + } ] + } ] +}, { + "@id" : "_:genid7351", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/PriceSpecification" + }, { + "@id" : "https://schema.org/Reservation" + }, { + "@id" : "https://schema.org/Ticket" + }, { + "@id" : "https://schema.org/TradeAction" + } ] + } ] +}, { + "@id" : "_:genid7357", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7361", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] + } ] +}, { + "@id" : "_:genid7363", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7367", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/TradeAction" + } ] + } ] +}, { + "@id" : "_:genid737", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7371", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PriceSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7376", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CompoundPriceSpecification" + }, { + "@id" : "https://schema.org/UnitPriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid7379", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PriceTypeEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7384", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid7386", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid7388", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/WebPage" + } ] + } ] +}, { + "@id" : "_:genid7390", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ImageObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7395", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + } ] + } ] +}, { + "@id" : "_:genid7397", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTherapy" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7402", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsArticle" + } ] + } ] +}, { + "@id" : "_:genid7404", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7408", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsArticle" + } ] + } ] +}, { + "@id" : "_:genid741", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Trip" + } ] + } ] +}, { + "@id" : "_:genid7410", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7414", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsArticle" + } ] + } ] +}, { + "@id" : "_:genid7416", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7420", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsArticle" + } ] + } ] +}, { + "@id" : "_:genid7422", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7426", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalDevice" + } ] + } ] +}, { + "@id" : "_:genid7428", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid743", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + }, { + "@id" : "https://schema.org/Time" + } ] + } ] +}, { + "@id" : "_:genid7432", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalProcedure" + } ] + } ] +}, { + "@id" : "_:genid7434", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalProcedureType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7439", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ServiceChannel" + } ] + } ] +}, { + "@id" : "_:genid7441", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7446", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid7448", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7452", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid7454", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid746", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/VisualArtwork" + } ] + } ] +}, { + "@id" : "_:genid7460", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid7462", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7467", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProductGroup" + } ] + } ] +}, { + "@id" : "_:genid7469", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7473", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid7475", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7479", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProductReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid748", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7481", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid7483", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProductReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid7485", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7489", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + } ] + } ] +}, { + "@id" : "_:genid7491", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7496", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + }, { + "@id" : "https://schema.org/Episode" + }, { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/Movie" + }, { + "@id" : "https://schema.org/MovieSeries" + }, { + "@id" : "https://schema.org/RadioSeries" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid7505", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7510", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid7513", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid7515", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/TechArticle" + } ] + } ] +}, { + "@id" : "_:genid7517", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7521", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Reservation" + } ] + } ] +}, { + "@id" : "_:genid7523", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProgramMembership" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7528", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProgramMembership" + } ] + } ] +}, { + "@id" : "_:genid753", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/VisualArtwork" + } ] + } ] +}, { + "@id" : "_:genid7530", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7534", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid7536", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AlignmentObject" + }, { + "@id" : "https://schema.org/Course" + }, { + "@id" : "https://schema.org/EducationalOccupationalCredential" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7543", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid7545", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid755", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7550", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareSourceCode" + } ] + } ] +}, { + "@id" : "_:genid7552", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ComputerLanguage" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7557", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/APIReference" + } ] + } ] +}, { + "@id" : "_:genid7559", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7563", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValue" + } ] + } ] +}, { + "@id" : "_:genid7565", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7569", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DietarySupplement" + }, { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid7572", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7576", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NutritionInformation" + } ] + } ] +}, { + "@id" : "_:genid7578", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Mass" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7583", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Action" + }, { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/EducationalOccupationalProgram" + }, { + "@id" : "https://schema.org/Invoice" + }, { + "@id" : "https://schema.org/ParcelDelivery" + }, { + "@id" : "https://schema.org/Reservation" + }, { + "@id" : "https://schema.org/Service" + }, { + "@id" : "https://schema.org/Trip" + } ] + } ] +}, { + "@id" : "_:genid759", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Artery" + } ] + } ] +}, { + "@id" : "_:genid7592", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7598", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid7600", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7604", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastChannel" + } ] + } ] +}, { + "@id" : "_:genid7606", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastService" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid761", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7611", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ServiceChannel" + } ] + } ] +}, { + "@id" : "_:genid7613", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Service" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7618", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid7620", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid7622", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SpecialAnnouncement" + } ] + } ] +}, { + "@id" : "_:genid7624", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebContent" + } ] + } ] +}, { + "@id" : "_:genid7629", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid7631", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PublicationEvent" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7636", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalScholarlyArticle" + } ] + } ] +}, { + "@id" : "_:genid7638", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7642", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PublicationEvent" + } ] + } ] +}, { + "@id" : "_:genid7644", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7650", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PublicationEvent" + } ] + } ] +}, { + "@id" : "_:genid7652", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastService" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7657", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid7659", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid766", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/VisualArtwork" + } ] + } ] +}, { + "@id" : "_:genid7665", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid7667", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7672", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid7676", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid768", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7681", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid7684", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid7686", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + }, { + "@id" : "https://schema.org/Occupation" + } ] + } ] +}, { + "@id" : "_:genid7689", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalCredential" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7694", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SpecialAnnouncement" + } ] + } ] +}, { + "@id" : "_:genid7696", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebContent" + } ] + } ] +}, { + "@id" : "_:genid7701", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SearchAction" + } ] + } ] +}, { + "@id" : "_:genid7703", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7707", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Game" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid7710", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7715", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AskAction" + } ] + } ] +}, { + "@id" : "_:genid7717", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Question" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid772", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Article" + } ] + } ] +}, { + "@id" : "_:genid7722", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Property" + } ] + } ] +}, { + "@id" : "_:genid7724", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Class" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7729", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AggregateRating" + } ] + } ] +}, { + "@id" : "_:genid7731", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid7733", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Rating" + } ] + } ] +}, { + "@id" : "_:genid7735", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7739", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Rating" + } ] + } ] +}, { + "@id" : "_:genid774", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7741", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7746", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Audiobook" + } ] + } ] +}, { + "@id" : "_:genid7748", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7753", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValueSpecification" + } ] + } ] +}, { + "@id" : "_:genid7755", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid7757", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RentAction" + } ] + } ] +}, { + "@id" : "_:genid7759", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RealEstateAgent" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7764", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CookAction" + } ] + } ] +}, { + "@id" : "_:genid7766", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Recipe" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7771", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Recipe" + } ] + } ] +}, { + "@id" : "_:genid7773", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7777", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Recipe" + } ] + } ] +}, { + "@id" : "_:genid7779", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid778", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Article" + } ] + } ] +}, { + "@id" : "_:genid7783", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Recipe" + } ] + } ] +}, { + "@id" : "_:genid7785", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7789", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Recipe" + } ] + } ] +}, { + "@id" : "_:genid7791", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/ItemList" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7797", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Recipe" + } ] + } ] +}, { + "@id" : "_:genid7799", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid78", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid780", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7804", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AuthorizeAction" + }, { + "@id" : "https://schema.org/CommunicateAction" + }, { + "@id" : "https://schema.org/DonateAction" + }, { + "@id" : "https://schema.org/GiveAction" + }, { + "@id" : "https://schema.org/Message" + }, { + "@id" : "https://schema.org/PayAction" + }, { + "@id" : "https://schema.org/ReturnAction" + }, { + "@id" : "https://schema.org/SendAction" + }, { + "@id" : "https://schema.org/TipAction" + } ] + } ] +}, { + "@id" : "_:genid7814", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Audience" + }, { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7822", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalCredential" + } ] + } ] +}, { + "@id" : "_:genid7824", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7829", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] + } ] +}, { + "@id" : "_:genid7831", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7836", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalGuidelineRecommendation" + } ] + } ] +}, { + "@id" : "_:genid7838", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid784", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ComicIssue" + }, { + "@id" : "https://schema.org/ComicStory" + }, { + "@id" : "https://schema.org/VisualArtwork" + } ] + } ] +}, { + "@id" : "_:genid7842", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DietarySupplement" + } ] + } ] +}, { + "@id" : "_:genid7844", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RecommendedDoseSchedule" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7849", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicRelease" + } ] + } ] +}, { + "@id" : "_:genid7851", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7856", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicComposition" + } ] + } ] +}, { + "@id" : "_:genid7858", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicRecording" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7863", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid7865", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7870", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid7872", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7877", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicRecording" + } ] + } ] +}, { + "@id" : "_:genid7879", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicComposition" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid788", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7884", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LoanOrCredit" + } ] + } ] +}, { + "@id" : "_:genid7886", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid7888", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/UnitPriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid7890", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7895", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + } ] + } ] +}, { + "@id" : "_:genid7897", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Order" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7902", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid7904", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RefundTypeEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7909", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LymphaticVessel" + }, { + "@id" : "https://schema.org/Vein" + } ] + } ] +}, { + "@id" : "_:genid7912", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/AnatomicalSystem" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7918", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + } ] + } ] +}, { + "@id" : "_:genid7920", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7925", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SuperficialAnatomy" + } ] + } ] +}, { + "@id" : "_:genid7927", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/AnatomicalSystem" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid793", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/VisualArtwork" + } ] + } ] +}, { + "@id" : "_:genid7933", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/AnatomicalSystem" + }, { + "@id" : "https://schema.org/SuperficialAnatomy" + } ] + } ] +}, { + "@id" : "_:genid7937", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7942", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid7944", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7949", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/WebPage" + } ] + } ] +}, { + "@id" : "_:genid795", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7951", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7955", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalSystem" + } ] + } ] +}, { + "@id" : "_:genid7957", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7962", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/AnatomicalSystem" + }, { + "@id" : "https://schema.org/SuperficialAnatomy" + } ] + } ] +}, { + "@id" : "_:genid7966", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTherapy" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7971", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid7973", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7978", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid7980", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid7982", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid7984", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7988", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicRelease" + } ] + } ] +}, { + "@id" : "_:genid799", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid7990", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicAlbum" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid7995", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid7997", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PublicationEvent" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid80", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8002", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid8004", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Occupation" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8009", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] + } ] +}, { + "@id" : "_:genid8011", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalSpecialty" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8016", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid8018", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid8020", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LoanOrCredit" + } ] + } ] +}, { + "@id" : "_:genid8022", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid8024", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Schedule" + } ] + } ] +}, { + "@id" : "_:genid8026", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid8028", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Schedule" + } ] + } ] +}, { + "@id" : "_:genid803", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8030", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8035", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExercisePlan" + } ] + } ] +}, { + "@id" : "_:genid8037", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8043", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ReplaceAction" + } ] + } ] +}, { + "@id" : "_:genid8045", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8050", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ReplaceAction" + } ] + } ] +}, { + "@id" : "_:genid8052", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8057", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/UserComments" + } ] + } ] +}, { + "@id" : "_:genid8059", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8063", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Report" + } ] + } ] +}, { + "@id" : "_:genid8065", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8069", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ImageObject" + } ] + } ] +}, { + "@id" : "_:genid807", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalWebPage" + } ] + } ] +}, { + "@id" : "_:genid8071", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid8073", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LoanOrCredit" + } ] + } ] +}, { + "@id" : "_:genid8075", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8080", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PeopleAudience" + } ] + } ] +}, { + "@id" : "_:genid8082", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8086", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PeopleAudience" + } ] + } ] +}, { + "@id" : "_:genid8088", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid809", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8090", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PeopleAudience" + } ] + } ] +}, { + "@id" : "_:genid8092", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid8094", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowToItem" + } ] + } ] +}, { + "@id" : "_:genid8096", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8102", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid8104", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8108", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ActionAccessSpecification" + }, { + "@id" : "https://schema.org/MediaObject" + } ] + } ] +}, { + "@id" : "_:genid8111", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + }, { + "@id" : "https://schema.org/MediaSubscription" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8117", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Reservation" + } ] + } ] +}, { + "@id" : "_:genid8119", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8124", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Reservation" + } ] + } ] +}, { + "@id" : "_:genid8126", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid813", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/APIReference" + } ] + } ] +}, { + "@id" : "_:genid8130", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Reservation" + } ] + } ] +}, { + "@id" : "_:genid8132", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ReservationStatusType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8137", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Reservation" + } ] + } ] +}, { + "@id" : "_:genid8139", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Ticket" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8144", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + }, { + "@id" : "https://schema.org/Occupation" + } ] + } ] +}, { + "@id" : "_:genid8147", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid815", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8151", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExercisePlan" + } ] + } ] +}, { + "@id" : "_:genid8153", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8158", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid8160", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8166", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Action" + } ] + } ] +}, { + "@id" : "_:genid8168", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8173", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CommentAction" + }, { + "@id" : "https://schema.org/ReplyAction" + } ] + } ] +}, { + "@id" : "_:genid8176", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Comment" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8181", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ReviewAction" + } ] + } ] +}, { + "@id" : "_:genid8183", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Review" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8188", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid819", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/APIReference" + } ] + } ] +}, { + "@id" : "_:genid8190", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ReturnFeesEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8195", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid8197", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ReturnLabelSourceEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8202", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid8204", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ReturnMethodEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8209", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + }, { + "@id" : "https://schema.org/MerchantReturnPolicySeasonalOverride" + } ] + } ] +}, { + "@id" : "_:genid821", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8212", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnEnumeration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8217", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid8219", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Country" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8224", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid8226", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicySeasonalOverride" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8231", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MerchantReturnPolicy" + } ] + } ] +}, { + "@id" : "_:genid8233", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8238", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Brand" + }, { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid8247", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Review" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid825", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/EducationEvent" + }, { + "@id" : "https://schema.org/LearningResource" + } ] + } ] +}, { + "@id" : "_:genid8252", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Guide" + }, { + "@id" : "https://schema.org/Rating" + }, { + "@id" : "https://schema.org/Review" + } ] + } ] +}, { + "@id" : "_:genid8256", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8260", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Review" + } ] + } ] +}, { + "@id" : "_:genid8262", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8266", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AggregateRating" + } ] + } ] +}, { + "@id" : "_:genid8268", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid8270", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Review" + } ] + } ] +}, { + "@id" : "_:genid8272", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Rating" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8277", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/WebPage" + } ] + } ] +}, { + "@id" : "_:genid8279", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8285", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid829", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8291", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Review" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8296", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + } ] + } ] +}, { + "@id" : "_:genid8298", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalRiskFactor" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8303", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Diet" + } ] + } ] +}, { + "@id" : "_:genid8305", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8309", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + } ] + } ] +}, { + "@id" : "_:genid8311", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8315", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BusOrCoach" + }, { + "@id" : "https://schema.org/Car" + } ] + } ] +}, { + "@id" : "_:genid8318", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8323", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RsvpAction" + } ] + } ] +}, { + "@id" : "_:genid8325", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/RsvpResponseType" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8330", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/LymphaticVessel" + } ] + } ] +}, { + "@id" : "_:genid8332", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/Vessel" + } ] + } ] +}, { + "@id" : "_:genid8337", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareSourceCode" + } ] + } ] +}, { + "@id" : "_:genid8339", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid834", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + }, { + "@id" : "https://schema.org/PhysicalActivity" + } ] + } ] +}, { + "@id" : "_:genid8343", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareSourceCode" + } ] + } ] +}, { + "@id" : "_:genid8345", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8349", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Drug" + } ] + } ] +}, { + "@id" : "_:genid8351", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8355", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DietarySupplement" + } ] + } ] +}, { + "@id" : "_:genid8357", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8361", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EmployeeRole" + }, { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid8364", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8368", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid837", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/AnatomicalSystem" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SuperficialAnatomy" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8370", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmountDistribution" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8375", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Thing" + } ] + } ] +}, { + "@id" : "_:genid8377", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8381", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareSourceCode" + } ] + } ] +}, { + "@id" : "_:genid8383", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8387", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NutritionInformation" + } ] + } ] +}, { + "@id" : "_:genid8389", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Mass" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8394", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Schedule" + } ] + } ] +}, { + "@id" : "_:genid8396", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid84", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid8400", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + } ] + } ] +}, { + "@id" : "_:genid8402", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid8404", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PlanAction" + } ] + } ] +}, { + "@id" : "_:genid8406", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid8409", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid8411", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8415", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SpecialAnnouncement" + } ] + } ] +}, { + "@id" : "_:genid8417", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebContent" + } ] + } ] +}, { + "@id" : "_:genid8422", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MovieTheater" + } ] + } ] +}, { + "@id" : "_:genid8424", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid8426", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid8428", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ImageObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8433", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid8435", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + } ] + } ] +}, { + "@id" : "_:genid8437", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid8439", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid844", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + } ] + } ] +}, { + "@id" : "_:genid8444", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid8446", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8452", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RadioSeries" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid8456", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid846", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsArticle" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8461", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + } ] + } ] +}, { + "@id" : "_:genid8463", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8468", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RadioSeries" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid8472", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8477", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Seat" + } ] + } ] +}, { + "@id" : "_:genid8479", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8483", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Seat" + } ] + } ] +}, { + "@id" : "_:genid8485", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8489", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Seat" + } ] + } ] +}, { + "@id" : "_:genid8491", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8495", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid8497", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8503", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Seat" + } ] + } ] +}, { + "@id" : "_:genid8505", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QualitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid851", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Review" + } ] + } ] +}, { + "@id" : "_:genid8510", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + } ] + } ] +}, { + "@id" : "_:genid8512", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTherapy" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8517", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid8519", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8523", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FlightReservation" + } ] + } ] +}, { + "@id" : "_:genid8525", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8529", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid853", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Review" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8532", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8537", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BuyAction" + }, { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Flight" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Order" + } ] + } ] +}, { + "@id" : "_:genid8543", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8549", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Message" + }, { + "@id" : "https://schema.org/ReceiveAction" + } ] + } ] +}, { + "@id" : "_:genid8552", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Audience" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8559", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid8561", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8566", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Nerve" + } ] + } ] +}, { + "@id" : "_:genid8568", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SuperficialAnatomy" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8574", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/IndividualProduct" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid8578", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid858", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] + } ] +}, { + "@id" : "_:genid8582", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalDevice" + }, { + "@id" : "https://schema.org/MedicalTherapy" + } ] + } ] +}, { + "@id" : "_:genid8585", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8590", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GameServer" + } ] + } ] +}, { + "@id" : "_:genid8592", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GameServerStatus" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8597", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FoodEstablishment" + } ] + } ] +}, { + "@id" : "_:genid8599", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid86", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid860", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + }, { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8603", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid8607", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AdministrativeArea" + }, { + "@id" : "https://schema.org/GeoShape" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8614", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid8616", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Audience" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8621", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ServiceChannel" + } ] + } ] +}, { + "@id" : "_:genid8623", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8628", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GovernmentService" + } ] + } ] +}, { + "@id" : "_:genid8630", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8635", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid8637", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8642", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ServiceChannel" + } ] + } ] +}, { + "@id" : "_:genid8644", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8649", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ServiceChannel" + } ] + } ] +}, { + "@id" : "_:genid8651", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PostalAddress" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8656", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ServiceChannel" + } ] + } ] +}, { + "@id" : "_:genid8658", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid866", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/HyperToc" + }, { + "@id" : "https://schema.org/HyperTocEntry" + } ] + } ] +}, { + "@id" : "_:genid8663", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid8665", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GovernmentBenefitsType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8670", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ServiceChannel" + } ] + } ] +}, { + "@id" : "_:genid8672", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8676", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NutritionInformation" + } ] + } ] +}, { + "@id" : "_:genid8678", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8682", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + } ] + } ] +}, { + "@id" : "_:genid8684", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8688", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Comment" + }, { + "@id" : "https://schema.org/SocialMediaPosting" + } ] + } ] +}, { + "@id" : "_:genid8691", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8696", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryTimeSettings" + }, { + "@id" : "https://schema.org/OfferShippingDetails" + }, { + "@id" : "https://schema.org/ShippingRateSettings" + } ] + } ] +}, { + "@id" : "_:genid870", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8700", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedRegion" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8705", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid8707", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OfferShippingDetails" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8712", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OfferShippingDetails" + }, { + "@id" : "https://schema.org/ShippingRateSettings" + } ] + } ] +}, { + "@id" : "_:genid8715", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8719", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OfferShippingDetails" + } ] + } ] +}, { + "@id" : "_:genid8721", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedRegion" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8726", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OfferShippingDetails" + }, { + "@id" : "https://schema.org/ShippingRateSettings" + } ] + } ] +}, { + "@id" : "_:genid8729", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8734", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OfferShippingDetails" + } ] + } ] +}, { + "@id" : "_:genid8736", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8740", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid8742", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8747", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid8749", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid875", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Review" + } ] + } ] +}, { + "@id" : "_:genid8754", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTest" + } ] + } ] +}, { + "@id" : "_:genid8756", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalSign" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8761", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + } ] + } ] +}, { + "@id" : "_:genid8763", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalSignOrSymptom" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8768", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SuperficialAnatomy" + } ] + } ] +}, { + "@id" : "_:genid877", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Review" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8770", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8774", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/WebPage" + } ] + } ] +}, { + "@id" : "_:genid8776", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8780", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/WebPage" + } ] + } ] +}, { + "@id" : "_:genid8782", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8786", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid8789", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SizeSpecification" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8796", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SizeSpecification" + } ] + } ] +}, { + "@id" : "_:genid8798", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SizeGroupEnumeration" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8803", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SizeSpecification" + } ] + } ] +}, { + "@id" : "_:genid8805", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SizeSystemEnumeration" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8810", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + }, { + "@id" : "https://schema.org/Occupation" + } ] + } ] +}, { + "@id" : "_:genid8813", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8818", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/Product" + } ] + } ] +}, { + "@id" : "_:genid882", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/AnatomicalSystem" + }, { + "@id" : "https://schema.org/SuperficialAnatomy" + } ] + } ] +}, { + "@id" : "_:genid8822", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8826", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Brand" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid8832", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8836", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MolecularEntity" + } ] + } ] +}, { + "@id" : "_:genid8838", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8842", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid8844", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Boolean" + } ] + } ] +}, { + "@id" : "_:genid8846", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NutritionInformation" + } ] + } ] +}, { + "@id" : "_:genid8848", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Mass" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8853", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid8855", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SoftwareApplication" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid886", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8860", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid8862", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8867", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid8869", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8873", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid8875", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8879", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid8881", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8886", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Nerve" + } ] + } ] +}, { + "@id" : "_:genid8888", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BrainStructure" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8893", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid8895", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid890", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Review" + } ] + } ] +}, { + "@id" : "_:genid8900", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid8902", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8907", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Article" + }, { + "@id" : "https://schema.org/WebPage" + } ] + } ] +}, { + "@id" : "_:genid8910", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SpeakableSpecification" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8915", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid8917", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid892", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Review" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8921", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid8923", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OpeningHoursSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8928", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/WebPage" + } ] + } ] +}, { + "@id" : "_:genid8930", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Specialty" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8935", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PronounceableText" + } ] + } ] +}, { + "@id" : "_:genid8937", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8941", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid8943", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8948", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Quotation" + } ] + } ] +}, { + "@id" : "_:genid8950", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8956", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Grant" + }, { + "@id" : "https://schema.org/MedicalStudy" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid8963", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8969", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SportsEvent" + }, { + "@id" : "https://schema.org/SportsOrganization" + } ] + } ] +}, { + "@id" : "_:genid897", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SportsTeam" + } ] + } ] +}, { + "@id" : "_:genid8972", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8976", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExerciseAction" + } ] + } ] +}, { + "@id" : "_:genid8978", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SportsActivityLocation" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8983", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExerciseAction" + } ] + } ] +}, { + "@id" : "_:genid8985", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SportsEvent" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid899", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8990", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExerciseAction" + } ] + } ] +}, { + "@id" : "_:genid8992", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SportsTeam" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid8997", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid8999", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid90", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid9004", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + } ] + } ] +}, { + "@id" : "_:genid9006", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalConditionStage" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9011", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalConditionStage" + } ] + } ] +}, { + "@id" : "_:genid9013", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid9015", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/FoodEstablishment" + }, { + "@id" : "https://schema.org/LodgingBusiness" + } ] + } ] +}, { + "@id" : "_:genid9018", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Rating" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9023", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + }, { + "@id" : "https://schema.org/CreativeWorkSeries" + }, { + "@id" : "https://schema.org/DatedMoneySpecification" + }, { + "@id" : "https://schema.org/EducationalOccupationalProgram" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/MerchantReturnPolicySeasonalOverride" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Schedule" + } ] + } ] +}, { + "@id" : "_:genid9032", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid9035", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Clip" + }, { + "@id" : "https://schema.org/SeekToAction" + } ] + } ] +}, { + "@id" : "_:genid9038", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HyperTocEntry" + }, { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid904", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid9044", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Action" + }, { + "@id" : "https://schema.org/FoodEstablishmentReservation" + }, { + "@id" : "https://schema.org/InteractionCounter" + }, { + "@id" : "https://schema.org/MediaObject" + }, { + "@id" : "https://schema.org/Schedule" + } ] + } ] +}, { + "@id" : "_:genid9050", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + }, { + "@id" : "https://schema.org/Time" + } ] + } ] +}, { + "@id" : "_:genid9053", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/StatisticalVariable" + } ] + } ] +}, { + "@id" : "_:genid9055", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Property" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid906", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9060", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + }, { + "@id" : "https://schema.org/MedicalProcedure" + }, { + "@id" : "https://schema.org/MedicalStudy" + } ] + } ] +}, { + "@id" : "_:genid9064", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EventStatusType" + }, { + "@id" : "https://schema.org/MedicalStudyStatus" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9070", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid9072", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SteeringPositionValue" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9077", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowTo" + } ] + } ] +}, { + "@id" : "_:genid9079", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/HowToSection" + }, { + "@id" : "https://schema.org/HowToStep" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9086", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValueSpecification" + } ] + } ] +}, { + "@id" : "_:genid9088", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid9090", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowTo" + }, { + "@id" : "https://schema.org/HowToSection" + } ] + } ] +}, { + "@id" : "_:genid9093", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/ItemList" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9099", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid9101", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9105", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PostalAddress" + } ] + } ] +}, { + "@id" : "_:genid9107", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9111", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugStrength" + } ] + } ] +}, { + "@id" : "_:genid9113", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9117", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DrugStrength" + } ] + } ] +}, { + "@id" : "_:genid9119", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid912", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid9121", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Joint" + } ] + } ] +}, { + "@id" : "_:genid9123", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9127", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] + } ] +}, { + "@id" : "_:genid9129", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalStudy" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9134", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalObservationalStudy" + } ] + } ] +}, { + "@id" : "_:genid9136", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalObservationalStudyDesign" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid914", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9141", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalStudy" + } ] + } ] +}, { + "@id" : "_:genid9143", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AdministrativeArea" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9148", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalStudy" + } ] + } ] +}, { + "@id" : "_:genid9150", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalEntity" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9155", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/StupidType" + }, { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid9158", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9163", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid9165", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9170", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid9172", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9177", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid9179", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9184", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ReservationPackage" + } ] + } ] +}, { + "@id" : "_:genid9186", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Reservation" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9191", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalConditionStage" + } ] + } ] +}, { + "@id" : "_:genid9193", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9197", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + } ] + } ] +}, { + "@id" : "_:genid9199", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid92", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid920", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/LodgingBusiness" + }, { + "@id" : "https://schema.org/PlayAction" + }, { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid9204", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTestPanel" + } ] + } ] +}, { + "@id" : "_:genid9206", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTest" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9211", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Trip" + } ] + } ] +}, { + "@id" : "_:genid9213", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Trip" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9218", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Thing" + } ] + } ] +}, { + "@id" : "_:genid9220", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9226", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BroadcastEvent" + }, { + "@id" : "https://schema.org/Movie" + }, { + "@id" : "https://schema.org/ScreeningEvent" + }, { + "@id" : "https://schema.org/TVEpisode" + } ] + } ] +}, { + "@id" : "_:genid9231", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Language" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9236", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProductModel" + } ] + } ] +}, { + "@id" : "_:genid9238", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ProductModel" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9243", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NutritionInformation" + } ] + } ] +}, { + "@id" : "_:genid9245", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Mass" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9250", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PeopleAudience" + }, { + "@id" : "https://schema.org/SizeSpecification" + } ] + } ] +}, { + "@id" : "_:genid9253", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9258", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Question" + } ] + } ] +}, { + "@id" : "_:genid9260", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Answer" + }, { + "@id" : "https://schema.org/ItemList" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9266", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PeopleAudience" + }, { + "@id" : "https://schema.org/SizeSpecification" + } ] + } ] +}, { + "@id" : "_:genid9269", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/GenderType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid927", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Audience" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9274", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PeopleAudience" + } ] + } ] +}, { + "@id" : "_:genid9276", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid9278", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PeopleAudience" + }, { + "@id" : "https://schema.org/SizeSpecification" + } ] + } ] +}, { + "@id" : "_:genid9281", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9286", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PeopleAudience" + } ] + } ] +}, { + "@id" : "_:genid9288", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid9290", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MenuItem" + }, { + "@id" : "https://schema.org/Recipe" + } ] + } ] +}, { + "@id" : "_:genid9293", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/RestrictedDiet" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9298", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid9300", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9305", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Class" + }, { + "@id" : "https://schema.org/Enumeration" + }, { + "@id" : "https://schema.org/Property" + } ] + } ] +}, { + "@id" : "_:genid9309", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Class" + }, { + "@id" : "https://schema.org/Enumeration" + }, { + "@id" : "https://schema.org/Property" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9316", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowTo" + }, { + "@id" : "https://schema.org/HowToDirection" + } ] + } ] +}, { + "@id" : "_:genid9319", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowToSupply" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid932", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Audience" + } ] + } ] +}, { + "@id" : "_:genid9324", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Artery" + } ] + } ] +}, { + "@id" : "_:genid9326", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9331", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] + } ] +}, { + "@id" : "_:genid9333", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DataFeed" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9338", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/VisualArtwork" + } ] + } ] +}, { + "@id" : "_:genid934", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9340", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9344", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Course" + } ] + } ] +}, { + "@id" : "_:genid9346", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Syllabus" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9351", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Action" + } ] + } ] +}, { + "@id" : "_:genid9353", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EntryPoint" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9358", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/UpdateAction" + } ] + } ] +}, { + "@id" : "_:genid9360", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/Thing" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9365", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AlignmentObject" + } ] + } ] +}, { + "@id" : "_:genid9367", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9371", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AlignmentObject" + } ] + } ] +}, { + "@id" : "_:genid9373", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9377", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/APIReference" + } ] + } ] +}, { + "@id" : "_:genid9379", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid938", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid9383", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DietarySupplement" + }, { + "@id" : "https://schema.org/DoseSchedule" + } ] + } ] +}, { + "@id" : "_:genid9386", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9390", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SoftwareSourceCode" + } ] + } ] +}, { + "@id" : "_:genid9392", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/SoftwareApplication" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9397", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AlignmentObject" + } ] + } ] +}, { + "@id" : "_:genid9399", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid940", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AudioObject" + }, { + "@id" : "https://schema.org/Clip" + }, { + "@id" : "https://schema.org/MusicRecording" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9403", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + } ] + } ] +}, { + "@id" : "_:genid9406", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9410", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Taxon" + } ] + } ] +}, { + "@id" : "_:genid9412", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9417", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] + } ] +}, { + "@id" : "_:genid9419", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Taxon" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9425", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/EducationEvent" + }, { + "@id" : "https://schema.org/LearningResource" + } ] + } ] +}, { + "@id" : "_:genid9429", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9434", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid9439", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9443", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid9445", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9450", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid9452", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DateTime" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9457", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DefinedTerm" + } ] + } ] +}, { + "@id" : "_:genid9459", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9463", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid9465", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid947", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Certification" + } ] + } ] +}, { + "@id" : "_:genid9470", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Service" + } ] + } ] +}, { + "@id" : "_:genid9472", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9476", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid9478", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + } ] + } ] +}, { + "@id" : "_:genid9480", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid9482", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9486", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PronounceableText" + } ] + } ] +}, { + "@id" : "_:genid9488", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid949", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid9492", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid9494", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ImageObject" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9499", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid9501", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9505", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Corporation" + } ] + } ] +}, { + "@id" : "_:genid9507", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9511", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Ticket" + } ] + } ] +}, { + "@id" : "_:genid9513", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9517", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Ticket" + } ] + } ] +}, { + "@id" : "_:genid9519", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid952", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaSubscription" + } ] + } ] +}, { + "@id" : "_:genid9523", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Ticket" + } ] + } ] +}, { + "@id" : "_:genid9525", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Seat" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9530", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid9532", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9536", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid9538", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid954", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9543", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid9545", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9550", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PathologyTest" + } ] + } ] +}, { + "@id" : "_:genid9552", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9556", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid9558", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9562", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Movie" + }, { + "@id" : "https://schema.org/TVEpisode" + }, { + "@id" : "https://schema.org/TVSeason" + }, { + "@id" : "https://schema.org/TVSeries" + } ] + } ] +}, { + "@id" : "_:genid9567", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9571", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ExerciseAction" + }, { + "@id" : "https://schema.org/InsertAction" + }, { + "@id" : "https://schema.org/MoveAction" + }, { + "@id" : "https://schema.org/TransferAction" + } ] + } ] +}, { + "@id" : "_:genid9576", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9581", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Message" + } ] + } ] +}, { + "@id" : "_:genid9583", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Audience" + }, { + "@id" : "https://schema.org/ContactPoint" + }, { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid959", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Rating" + } ] + } ] +}, { + "@id" : "_:genid9591", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HyperTocEntry" + } ] + } ] +}, { + "@id" : "_:genid9593", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HyperTocEntry" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9598", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HyperToc" + } ] + } ] +}, { + "@id" : "_:genid96", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid9600", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HyperTocEntry" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9605", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid9607", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9612", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowTo" + }, { + "@id" : "https://schema.org/HowToDirection" + } ] + } ] +}, { + "@id" : "_:genid9615", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowToTool" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid962", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9620", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EngineSpecification" + } ] + } ] +}, { + "@id" : "_:genid9622", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9627", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Course" + } ] + } ] +}, { + "@id" : "_:genid9629", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid9631", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/JobPosting" + } ] + } ] +}, { + "@id" : "_:genid9633", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid9635", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Invoice" + } ] + } ] +}, { + "@id" : "_:genid9637", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/PriceSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9643", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Reservation" + }, { + "@id" : "https://schema.org/Ticket" + } ] + } ] +}, { + "@id" : "_:genid9646", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Number" + }, { + "@id" : "https://schema.org/PriceSpecification" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9652", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HowTo" + }, { + "@id" : "https://schema.org/HowToDirection" + } ] + } ] +}, { + "@id" : "_:genid9655", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9660", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Accommodation" + }, { + "@id" : "https://schema.org/ApartmentComplex" + }, { + "@id" : "https://schema.org/Place" + } ] + } ] +}, { + "@id" : "_:genid9664", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9668", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/TouristAttraction" + }, { + "@id" : "https://schema.org/TouristDestination" + }, { + "@id" : "https://schema.org/TouristTrip" + } ] + } ] +}, { + "@id" : "_:genid9672", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Audience" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9677", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicGroup" + }, { + "@id" : "https://schema.org/MusicPlaylist" + } ] + } ] +}, { + "@id" : "_:genid968", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid9680", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ItemList" + }, { + "@id" : "https://schema.org/MusicRecording" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9686", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ParcelDelivery" + } ] + } ] +}, { + "@id" : "_:genid9688", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9692", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ParcelDelivery" + } ] + } ] +}, { + "@id" : "_:genid9694", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9698", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicGroup" + }, { + "@id" : "https://schema.org/MusicPlaylist" + } ] + } ] +}, { + "@id" : "_:genid9701", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MusicRecording" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9706", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + }, { + "@id" : "https://schema.org/Episode" + }, { + "@id" : "https://schema.org/Movie" + }, { + "@id" : "https://schema.org/MovieSeries" + }, { + "@id" : "https://schema.org/RadioSeries" + }, { + "@id" : "https://schema.org/TVSeries" + }, { + "@id" : "https://schema.org/VideoGame" + }, { + "@id" : "https://schema.org/VideoGameSeries" + } ] + } ] +}, { + "@id" : "_:genid971", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ItemAvailability" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9715", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/VideoObject" + } ] + } ] +}, { + "@id" : "_:genid9720", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vehicle" + } ] + } ] +}, { + "@id" : "_:genid9722", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9727", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/TrainTrip" + } ] + } ] +}, { + "@id" : "_:genid9729", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9733", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/TrainTrip" + } ] + } ] +}, { + "@id" : "_:genid9735", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9739", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + }, { + "@id" : "https://schema.org/WorkBasedProgram" + } ] + } ] +}, { + "@id" : "_:genid9742", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MonetaryAmountDistribution" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9747", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NutritionInformation" + } ] + } ] +}, { + "@id" : "_:genid9749", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Mass" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9754", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AudioObject" + }, { + "@id" : "https://schema.org/VideoObject" + } ] + } ] +}, { + "@id" : "_:genid9757", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid976", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ActionAccessSpecification" + }, { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid9761", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ShippingDeliveryTime" + } ] + } ] +}, { + "@id" : "_:genid9763", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9768", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/DeliveryTimeSettings" + }, { + "@id" : "https://schema.org/OfferShippingDetails" + } ] + } ] +}, { + "@id" : "_:genid9771", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9775", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid9777", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9782", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid9785", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9791", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/InfectiousDisease" + } ] + } ] +}, { + "@id" : "_:genid9793", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9797", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/SpecialAnnouncement" + } ] + } ] +}, { + "@id" : "_:genid9799", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + }, { + "@id" : "https://schema.org/WebContent" + } ] + } ] +}, { + "@id" : "_:genid98", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid980", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + }, { + "@id" : "https://schema.org/Time" + } ] + } ] +}, { + "@id" : "_:genid9804", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTrial" + } ] + } ] +}, { + "@id" : "_:genid9806", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTrialDesign" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9811", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Vein" + } ] + } ] +}, { + "@id" : "_:genid9813", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9818", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Trip" + } ] + } ] +}, { + "@id" : "_:genid9820", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9825", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BedDetails" + } ] + } ] +}, { + "@id" : "_:genid9827", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/BedType" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9832", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/OwnershipInfo" + }, { + "@id" : "https://schema.org/TypeAndQuantityNode" + } ] + } ] +}, { + "@id" : "_:genid9835", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Service" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid984", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/ActionAccessSpecification" + }, { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid9841", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Event" + } ] + } ] +}, { + "@id" : "_:genid9844", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9848", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] + } ] +}, { + "@id" : "_:genid9850", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/StructuredValue" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9856", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + } ] + } ] +}, { + "@id" : "_:genid9858", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTest" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9863", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Reservation" + }, { + "@id" : "https://schema.org/Ticket" + } ] + } ] +}, { + "@id" : "_:genid9866", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Person" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9872", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/TypeAndQuantityNode" + }, { + "@id" : "https://schema.org/UnitPriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid9877", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid988", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + }, { + "@id" : "https://schema.org/Time" + } ] + } ] +}, { + "@id" : "_:genid9881", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/PropertyValue" + }, { + "@id" : "https://schema.org/QuantitativeValue" + }, { + "@id" : "https://schema.org/TypeAndQuantityNode" + }, { + "@id" : "https://schema.org/UnitPriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid9886", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9890", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NewsMediaOrganization" + }, { + "@id" : "https://schema.org/Organization" + } ] + } ] +}, { + "@id" : "_:genid9893", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9898", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/NutritionInformation" + } ] + } ] +}, { + "@id" : "_:genid9900", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Mass" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9905", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MediaObject" + } ] + } ] +}, { + "@id" : "_:genid9907", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid9910", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Comment" + } ] + } ] +}, { + "@id" : "_:genid9912", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid9914", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Thing" + } ] + } ] +}, { + "@id" : "_:genid9916", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid992", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/Offer" + } ] + } ] +}, { + "@id" : "_:genid9920", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EntryPoint" + } ] + } ] +}, { + "@id" : "_:genid9922", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9926", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Physician" + } ] + } ] +}, { + "@id" : "_:genid9928", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9932", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] + } ] +}, { + "@id" : "_:genid9934", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9939", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTest" + } ] + } ] +}, { + "@id" : "_:genid9941", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalCondition" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9946", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/InteractionCounter" + } ] + } ] +}, { + "@id" : "_:genid9948", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Integer" + } ] + } ] +}, { + "@id" : "_:genid995", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Place" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9950", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalTest" + } ] + } ] +}, { + "@id" : "_:genid9952", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/MedicalDevice" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9957", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HealthInsurancePlan" + } ] + } ] +}, { + "@id" : "_:genid9959", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9963", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/HyperTocEntry" + } ] + } ] +}, { + "@id" : "_:genid9965", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9969", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/EducationalOccupationalCredential" + }, { + "@id" : "https://schema.org/Permit" + } ] + } ] +}, { + "@id" : "_:genid9972", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Duration" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9977", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Certification" + }, { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/LocationFeatureSpecification" + }, { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/OpeningHoursSpecification" + }, { + "@id" : "https://schema.org/Permit" + }, { + "@id" : "https://schema.org/PriceSpecification" + } ] + } ] +}, { + "@id" : "_:genid9986", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Date" + }, { + "@id" : "https://schema.org/DateTime" + } ] + } ] +}, { + "@id" : "_:genid9989", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Certification" + }, { + "@id" : "https://schema.org/EducationalOccupationalCredential" + }, { + "@id" : "https://schema.org/Permit" + } ] + } ] +}, { + "@id" : "_:genid9993", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/AdministrativeArea" + }, { + "@id" : "https://schema.org/Role" + }, { + "@id" : "https://schema.org/Text" + }, { + "@id" : "https://schema.org/URL" + } ] + } ] +}, { + "@id" : "_:genid9998", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2002/07/owl#unionOf" : [ { + "@list" : [ { + "@id" : "https://schema.org/Demand" + }, { + "@id" : "https://schema.org/JobPosting" + }, { + "@id" : "https://schema.org/LocationFeatureSpecification" + }, { + "@id" : "https://schema.org/MonetaryAmount" + }, { + "@id" : "https://schema.org/Offer" + }, { + "@id" : "https://schema.org/OpeningHoursSpecification" + }, { + "@id" : "https://schema.org/PriceSpecification" + } ] + } ] +}, { + "@id" : "http://purl.org/dc/terms/modified", + "@type" : [ "http://www.w3.org/2002/07/owl#AnnotationProperty" ] +}, { + "@id" : "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ] +}, { + "@id" : "http://www.w3.org/2000/01/rdf-schema#Class", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ] +}, { + "@id" : "https://schema.org/", + "@type" : [ "http://www.w3.org/2002/07/owl#Ontology" ], + "http://purl.org/dc/terms/modified" : [ { + "@type" : "http://www.w3.org/2001/XMLSchema#date", + "@value" : "2024-02-12" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@value" : "Schema.org Vocabulary" + } ], + "http://www.w3.org/2002/07/owl#versionInfo" : [ { + "@value" : "26.0" + } ] +}, { + "@id" : "https://schema.org/3DModel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A 3D model represents some kind of 3D content, which may have encodings in one or more MediaObjects. Many 3D formats are available (e.g. see Wikipedia); specific encoding formats can be represented using the encodingFormat property applied to the relevant MediaObject. For the\ncase of a single file published after Zip compression, the convention of appending '+zip' to the encodingFormat can be used. Geospatial, AR/VR, artistic/animation, gaming, engineering and scientific content can all be represented using 3DModel." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/3DModel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "3DModel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MediaObject" + } ] +}, { + "@id" : "https://schema.org/AMRadioChannel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A radio channel that uses AM." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AMRadioChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AMRadioChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/RadioChannel" + } ] +}, { + "@id" : "https://schema.org/APIReference", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Reference documentation for application programming interfaces (APIs)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/APIReference" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "APIReference" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TechArticle" + } ] +}, { + "@id" : "https://schema.org/AboutPage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Web page type: About page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AboutPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AboutPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPage" + } ] +}, { + "@id" : "https://schema.org/AcceptAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of committing to/adopting an object.

\n\nRelated actions:

\n\n\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AcceptAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AcceptAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AllocateAction" + } ] +}, { + "@id" : "https://schema.org/Accommodation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An accommodation is a place that can accommodate human beings, e.g. a hotel room, a camping pitch, or a meeting room. Many accommodations are for overnight stays, but this is not a mandatory requirement.\nFor more specific types of accommodations not defined in schema.org, one can use additionalType with external vocabularies.\n

\nSee also the dedicated document on the use of schema.org for marking up hotels and other forms of accommodations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Accommodation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Accommodation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Place" + } ] +}, { + "@id" : "https://schema.org/AccountingService", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Accountancy business.

\n\nAs a LocalBusiness it can be described as a provider of one or more Service(s)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AccountingService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AccountingService" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FinancialService" + } ] +}, { + "@id" : "https://schema.org/AchieveAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of accomplishing something via previous efforts. It is an instantaneous action rather than an ongoing process." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AchieveAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AchieveAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/Action", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An action performed by a direct agent and indirect participants upon a direct object. Optionally happens at a location with the help of an inanimate instrument. The execution of the action may produce a result. Specific action sub-type documentation specifies the exact expectation of each argument/role.

\n\nSee also blog post and Actions overview document." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Action" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Action" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Thing" + } ] +}, { + "@id" : "https://schema.org/ActionAccessSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A set of requirements that must be fulfilled in order to perform an Action." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ActionAccessSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ActionAccessSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/ActionStatusType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The status of an Action." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ActionStatusType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ActionStatusType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StatusEnumeration" + } ] +}, { + "@id" : "https://schema.org/ActivateAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of starting or activating a device or application (e.g. starting a timer or turning on a flashlight)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ActivateAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ActivateAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ControlAction" + } ] +}, { + "@id" : "https://schema.org/AddAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of editing by adding an object to a collection." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AddAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AddAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/UpdateAction" + } ] +}, { + "@id" : "https://schema.org/AdministrativeArea", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A geographical region, typically under the jurisdiction of a particular government." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AdministrativeArea" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AdministrativeArea" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Place" + } ] +}, { + "@id" : "https://schema.org/AdultEntertainment", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An adult entertainment establishment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AdultEntertainment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AdultEntertainment" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EntertainmentBusiness" + } ] +}, { + "@id" : "https://schema.org/AdultOrientedEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumeration of considerations that make a product relevant or potentially restricted for adults only." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/AdultOrientedEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AdultOrientedEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/AdvertiserContentArticle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An Article that an external entity has paid to place or to produce to its specifications. Includes advertorials, sponsored content, native advertising and other paid content." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/AdvertiserContentArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AdvertiserContentArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Article" + } ] +}, { + "@id" : "https://schema.org/AggregateOffer", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "When a single product is associated with multiple offers (for example, the same pair of shoes is offered by different merchants), then AggregateOffer can be used.

\n\nNote: AggregateOffers are normally expected to associate multiple offers that all share the same defined businessFunction value, or default to http://purl.org/goodrelations/v1#Sell if businessFunction is not explicitly defined." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AggregateOffer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AggregateOffer" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Offer" + } ] +}, { + "@id" : "https://schema.org/AggregateRating", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The average rating based on multiple ratings or reviews." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AggregateRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AggregateRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Rating" + } ] +}, { + "@id" : "https://schema.org/AgreeAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of expressing a consistency of opinion with the object. An agent agrees to/about an object (a proposition, topic or theme) with participants." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AgreeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AgreeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ReactAction" + } ] +}, { + "@id" : "https://schema.org/Airline", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An organization that provides flights for passengers." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Airline" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Airline" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/Airport", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An airport." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Airport" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Airport" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/AlignmentObject", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An intangible item that describes an alignment between a learning resource and a node in an educational framework.

\n\nShould not be used where the nature of the alignment can be described using a simple property, for example to express that a resource teaches or assesses a competency." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AlignmentObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AlignmentObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/AllocateAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of organizing tasks/objects/events by associating resources to it." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AllocateAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AllocateAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/OrganizeAction" + } ] +}, { + "@id" : "https://schema.org/AmpStory", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A creative work with a visual storytelling format intended to be viewed online, particularly on mobile devices." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/AmpStory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AmpStory" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/MediaObject" + } ] +}, { + "@id" : "https://schema.org/AmusementPark", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An amusement park." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AmusementPark" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AmusementPark" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EntertainmentBusiness" + } ] +}, { + "@id" : "https://schema.org/AnalysisNewsArticle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An AnalysisNewsArticle is a NewsArticle that, while based on factual reporting, incorporates the expertise of the author/producer, offering interpretations and conclusions." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/AnalysisNewsArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AnalysisNewsArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/NewsArticle" + } ] +}, { + "@id" : "https://schema.org/AnatomicalStructure", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any part of the human body, typically a component of an anatomical system. Organs, tissues, and cells are all anatomical structures." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/AnatomicalStructure" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AnatomicalStructure" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/AnatomicalSystem", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An anatomical system is a group of anatomical structures that work together to perform a certain task. Anatomical systems, such as organ systems, are one organizing principle of anatomy, and can include circulatory, digestive, endocrine, integumentary, immune, lymphatic, muscular, nervous, reproductive, respiratory, skeletal, urinary, vestibular, and other systems." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/AnatomicalSystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AnatomicalSystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/AnimalShelter", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Animal shelter." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AnimalShelter" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AnimalShelter" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/Answer", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An answer offered to a question; perhaps correct, perhaps opinionated or wrong." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Answer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Answer" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Comment" + } ] +}, { + "@id" : "https://schema.org/Apartment", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An apartment (in American English) or flat (in British English) is a self-contained housing unit (a type of residential real estate) that occupies only part of a building (source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Apartment)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Apartment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Apartment" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Accommodation" + } ] +}, { + "@id" : "https://schema.org/ApartmentComplex", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Residence type: Apartment complex." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ApartmentComplex" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ApartmentComplex" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Residence" + } ] +}, { + "@id" : "https://schema.org/AppendAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of inserting at the end if an ordered collection." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AppendAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AppendAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InsertAction" + } ] +}, { + "@id" : "https://schema.org/ApplyAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of registering to an organization/service without the guarantee to receive it.

\n\nRelated actions:

\n\n
    \n
  • RegisterAction: Unlike RegisterAction, ApplyAction has no guarantees that the application will be accepted.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ApplyAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ApplyAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/OrganizeAction" + } ] +}, { + "@id" : "https://schema.org/ApprovedIndication", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An indication for a medical therapy that has been formally specified or approved by a regulatory body that regulates use of the therapy; for example, the US FDA approves indications for most drugs in the US." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/ApprovedIndication" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ApprovedIndication" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalIndication" + } ] +}, { + "@id" : "https://schema.org/Aquarium", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Aquarium." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Aquarium" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Aquarium" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/ArchiveComponent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An intangible type to be applied to any archive content, carrying with it a set of properties required to describe archival items and collections." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ArchiveComponent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ArchiveComponent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/ArchiveOrganization", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An organization with archival holdings. An organization which keeps and preserves archival material and typically makes it accessible to the public." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ArchiveOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ArchiveOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/ArriveAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of arriving at a place. An agent arrives at a destination from a fromLocation, optionally with participants." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ArriveAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ArriveAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MoveAction" + } ] +}, { + "@id" : "https://schema.org/ArtGallery", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An art gallery." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ArtGallery" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ArtGallery" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EntertainmentBusiness" + } ] +}, { + "@id" : "https://schema.org/Artery", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A type of blood vessel that specifically carries blood away from the heart." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/Artery" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Artery" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Vessel" + } ] +}, { + "@id" : "https://schema.org/Article", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An article, such as a news article or piece of investigative report. Newspapers and magazines have articles of many different types and this is intended to cover them all.

\n\nSee also blog post." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Article" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Article" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/AskAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of posing a question / favor to someone.

\n\nRelated actions:

\n\n
    \n
  • ReplyAction: Appears generally as a response to AskAction.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AskAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AskAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CommunicateAction" + } ] +}, { + "@id" : "https://schema.org/AskPublicNewsArticle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A NewsArticle expressing an open call by a NewsMediaOrganization asking the public for input, insights, clarifications, anecdotes, documentation, etc., on an issue, for reporting purposes." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/AskPublicNewsArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AskPublicNewsArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/NewsArticle" + } ] +}, { + "@id" : "https://schema.org/AssessAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of forming one's opinion, reaction or sentiment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AssessAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AssessAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/AssignAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of allocating an action/event/task to some destination (someone or something)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AssignAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AssignAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AllocateAction" + } ] +}, { + "@id" : "https://schema.org/Atlas", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A collection or bound volume of maps, charts, plates or tables, physical or in media form illustrating any subject." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/Atlas" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Atlas" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/Attorney", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Professional service: Attorney.

\n\nThis type is deprecated - LegalService is more inclusive and less ambiguous." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Attorney" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Attorney" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LegalService" + } ] +}, { + "@id" : "https://schema.org/Audience", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Intended audience for an item, i.e. the group for whom the item was created." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Audience" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Audience" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/AudioObject", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An audio file." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AudioObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AudioObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MediaObject" + } ] +}, { + "@id" : "https://schema.org/AudioObjectSnapshot", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A specific and exact (byte-for-byte) version of an AudioObject. Two byte-for-byte identical files, for the purposes of this type, considered identical. If they have different embedded metadata the files will differ. Different external facts about the files, e.g. creator or dateCreated that aren't represented in their actual content, do not affect this notion of identity." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/AudioObjectSnapshot" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AudioObjectSnapshot" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AudioObject" + } ] +}, { + "@id" : "https://schema.org/Audiobook", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An audiobook." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/Audiobook" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Audiobook" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AudioObject" + }, { + "@id" : "https://schema.org/Book" + } ] +}, { + "@id" : "https://schema.org/AuthorizeAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of granting permission to an object." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AuthorizeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AuthorizeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AllocateAction" + } ] +}, { + "@id" : "https://schema.org/AutoBodyShop", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Auto body shop." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AutoBodyShop" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AutoBodyShop" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AutomotiveBusiness" + } ] +}, { + "@id" : "https://schema.org/AutoDealer", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An car dealership." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AutoDealer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AutoDealer" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AutomotiveBusiness" + } ] +}, { + "@id" : "https://schema.org/AutoPartsStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An auto parts store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AutoPartsStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AutoPartsStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AutomotiveBusiness" + }, { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/AutoRental", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A car rental business." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AutoRental" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AutoRental" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AutomotiveBusiness" + } ] +}, { + "@id" : "https://schema.org/AutoRepair", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Car repair business." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AutoRepair" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AutoRepair" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AutomotiveBusiness" + } ] +}, { + "@id" : "https://schema.org/AutoWash", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A car wash business." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AutoWash" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AutoWash" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AutomotiveBusiness" + } ] +}, { + "@id" : "https://schema.org/AutomatedTeller", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "ATM/cash machine." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AutomatedTeller" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AutomatedTeller" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FinancialService" + } ] +}, { + "@id" : "https://schema.org/AutomotiveBusiness", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Car repair, sales, or parts." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/AutomotiveBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "AutomotiveBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/BackgroundNewsArticle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A NewsArticle providing historical context, definition and detail on a specific topic (aka \"explainer\" or \"backgrounder\"). For example, an in-depth article or frequently-asked-questions (FAQ) document on topics such as Climate Change or the European Union. Other kinds of background material from a non-news setting are often described using Book or Article, in particular ScholarlyArticle. See also NewsArticle for related vocabulary from a learning/education perspective." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/BackgroundNewsArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BackgroundNewsArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/NewsArticle" + } ] +}, { + "@id" : "https://schema.org/Bakery", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A bakery." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Bakery" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Bakery" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FoodEstablishment" + } ] +}, { + "@id" : "https://schema.org/BankAccount", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A product or service offered by a bank whereby one may deposit, withdraw or transfer money and in some cases be paid interest." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BankAccount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BankAccount" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FinancialProduct" + } ] +}, { + "@id" : "https://schema.org/BankOrCreditUnion", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Bank or credit union." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BankOrCreditUnion" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BankOrCreditUnion" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FinancialService" + } ] +}, { + "@id" : "https://schema.org/BarOrPub", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A bar or pub." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BarOrPub" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BarOrPub" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FoodEstablishment" + } ] +}, { + "@id" : "https://schema.org/Barcode", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An image of a visual machine-readable code such as a barcode or QR code." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Barcode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Barcode" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ImageObject" + } ] +}, { + "@id" : "https://schema.org/Beach", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Beach." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Beach" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Beach" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/BeautySalon", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Beauty salon." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BeautySalon" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BeautySalon" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HealthAndBeautyBusiness" + } ] +}, { + "@id" : "https://schema.org/BedAndBreakfast", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Bed and breakfast.\n

\nSee also the dedicated document on the use of schema.org for marking up hotels and other forms of accommodations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BedAndBreakfast" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BedAndBreakfast" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LodgingBusiness" + } ] +}, { + "@id" : "https://schema.org/BedDetails", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An entity holding detailed information about the available bed types, e.g. the quantity of twin beds for a hotel room. For the single case of just one bed of a certain type, you can use bed directly with a text. See also BedType (under development)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BedDetails" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BedDetails" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/BedType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A type of bed. This is used for indicating the bed or beds available in an accommodation." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BedType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BedType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/QualitativeValue" + } ] +}, { + "@id" : "https://schema.org/BefriendAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of forming a personal connection with someone (object) mutually/bidirectionally/symmetrically.

\n\nRelated actions:

\n\n
    \n
  • FollowAction: Unlike FollowAction, BefriendAction implies that the connection is reciprocal.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BefriendAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BefriendAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InteractAction" + } ] +}, { + "@id" : "https://schema.org/BikeStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A bike store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BikeStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BikeStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/BioChemEntity", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any biological, chemical, or biochemical thing. For example: a protein; a gene; a chemical; a synthetic chemical." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/BioChemEntity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BioChemEntity" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Thing" + } ] +}, { + "@id" : "https://schema.org/Blog", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A blog, sometimes known as a \"weblog\". Note that the individual posts (BlogPostings) in a Blog are often colloquially referred to by the same term." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Blog" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Blog" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/BlogPosting", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A blog post." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BlogPosting" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BlogPosting" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/SocialMediaPosting" + } ] +}, { + "@id" : "https://schema.org/BloodTest", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical test performed on a sample of a patient's blood." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/BloodTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BloodTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalTest" + } ] +}, { + "@id" : "https://schema.org/BoardingPolicyType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A type of boarding policy used by an airline." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BoardingPolicyType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BoardingPolicyType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/BoatReservation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A reservation for boat travel.

\n\nNote: This type is for information about actual reservations, e.g. in confirmation emails or HTML pages with individual confirmations of reservations. For offers of tickets, use Offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/BoatReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BoatReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Reservation" + } ] +}, { + "@id" : "https://schema.org/BoatTerminal", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A terminal for boats, ships, and other water vessels." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/BoatTerminal" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BoatTerminal" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/BoatTrip", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A trip on a commercial ferry line." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/BoatTrip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BoatTrip" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Trip" + } ] +}, { + "@id" : "https://schema.org/BodyMeasurementTypeEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates types (or dimensions) of a person's body measurements, for example for fitting of clothes." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/BodyMeasurementTypeEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BodyMeasurementTypeEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MeasurementTypeEnumeration" + } ] +}, { + "@id" : "https://schema.org/BodyOfWater", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A body of water, such as a sea, ocean, or lake." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BodyOfWater" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BodyOfWater" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Landform" + } ] +}, { + "@id" : "https://schema.org/Bone", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Rigid connective tissue that comprises up the skeletal structure of the human body." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/Bone" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Bone" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + } ] +}, { + "@id" : "https://schema.org/Book", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A book." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Book" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Book" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/BookFormatType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The publication format of the book." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BookFormatType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BookFormatType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/BookSeries", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A series of books. Included books can be indicated with the hasPart property." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BookSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BookSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWorkSeries" + } ] +}, { + "@id" : "https://schema.org/BookStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A bookstore." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BookStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BookStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/BookmarkAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An agent bookmarks/flags/labels/tags/marks an object." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BookmarkAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BookmarkAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/OrganizeAction" + } ] +}, { + "@id" : "https://schema.org/Boolean", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Boolean: True or False." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Boolean" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Boolean" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DataType" + } ] +}, { + "@id" : "https://schema.org/BorrowAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of obtaining an object under an agreement to return it at a later date. Reciprocal of LendAction.

\n\nRelated actions:

\n\n\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BorrowAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BorrowAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TransferAction" + } ] +}, { + "@id" : "https://schema.org/BowlingAlley", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A bowling alley." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BowlingAlley" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BowlingAlley" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/SportsActivityLocation" + } ] +}, { + "@id" : "https://schema.org/BrainStructure", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any anatomical structure which pertains to the soft nervous tissue functioning as the coordinating center of sensation and intellectual and nervous activity." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/BrainStructure" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BrainStructure" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + } ] +}, { + "@id" : "https://schema.org/Brand", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A brand is a name used by an organization or business person for labeling a product, product group, or similar." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Brand" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Brand" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/BreadcrumbList", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A BreadcrumbList is an ItemList consisting of a chain of linked Web pages, typically described using at least their URL and their name, and typically ending with the current page.

\n\nThe position property is used to reconstruct the order of the items in a BreadcrumbList. The convention is that a breadcrumb list has an itemListOrder of ItemListOrderAscending (lower values listed first), and that the first items in this list correspond to the \"top\" or beginning of the breadcrumb trail, e.g. with a site or section homepage. The specific values of 'position' are not assigned meaning for a BreadcrumbList, but they should be integers, e.g. beginning with '1' for the first item in the list." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BreadcrumbList" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BreadcrumbList" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ItemList" + } ] +}, { + "@id" : "https://schema.org/Brewery", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Brewery." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Brewery" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Brewery" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FoodEstablishment" + } ] +}, { + "@id" : "https://schema.org/Bridge", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A bridge." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Bridge" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Bridge" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/BroadcastChannel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A unique instance of a BroadcastService on a CableOrSatelliteService lineup." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BroadcastChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BroadcastChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/BroadcastEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An over the air or online broadcast event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BroadcastEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BroadcastEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PublicationEvent" + } ] +}, { + "@id" : "https://schema.org/BroadcastFrequencySpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The frequency in MHz and the modulation used for a particular BroadcastService." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BroadcastFrequencySpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BroadcastFrequencySpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/BroadcastService", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A delivery service through which content is provided via broadcast over the air or online." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BroadcastService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BroadcastService" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Service" + } ] +}, { + "@id" : "https://schema.org/BrokerageAccount", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An account that allows an investor to deposit funds and place investment orders with a licensed broker or brokerage firm." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/BrokerageAccount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BrokerageAccount" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InvestmentOrDeposit" + } ] +}, { + "@id" : "https://schema.org/BuddhistTemple", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Buddhist temple." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BuddhistTemple" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BuddhistTemple" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PlaceOfWorship" + } ] +}, { + "@id" : "https://schema.org/BusOrCoach", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A bus (also omnibus or autobus) is a road vehicle designed to carry passengers. Coaches are luxury busses, usually in service for long distance travel." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/BusOrCoach" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BusOrCoach" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Vehicle" + } ] +}, { + "@id" : "https://schema.org/BusReservation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A reservation for bus travel.

\n\nNote: This type is for information about actual reservations, e.g. in confirmation emails or HTML pages with individual confirmations of reservations. For offers of tickets, use Offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BusReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BusReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Reservation" + } ] +}, { + "@id" : "https://schema.org/BusStation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A bus station." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BusStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BusStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/BusStop", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A bus stop." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BusStop" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BusStop" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/BusTrip", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A trip on a commercial bus line." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BusTrip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BusTrip" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Trip" + } ] +}, { + "@id" : "https://schema.org/BusinessAudience", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A set of characteristics belonging to businesses, e.g. who compose an item's target audience." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BusinessAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BusinessAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Audience" + } ] +}, { + "@id" : "https://schema.org/BusinessEntityType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A business entity type is a conceptual entity representing the legal form, the size, the main line of business, the position in the value chain, or any combination thereof, of an organization or business person.

\n\nCommonly used values:

\n\n
    \n
  • http://purl.org/goodrelations/v1#Business
  • \n
  • http://purl.org/goodrelations/v1#Enduser
  • \n
  • http://purl.org/goodrelations/v1#PublicInstitution
  • \n
  • http://purl.org/goodrelations/v1#Reseller
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BusinessEntityType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BusinessEntityType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/BusinessEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: Business event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BusinessEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BusinessEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/BusinessFunction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The business function specifies the type of activity or access (i.e., the bundle of rights) offered by the organization or business person through the offer. Typical are sell, rental or lease, maintenance or repair, manufacture / produce, recycle / dispose, engineering / construction, or installation. Proprietary specifications of access rights are also instances of this class.

\n\nCommonly used values:

\n\n
    \n
  • http://purl.org/goodrelations/v1#ConstructionInstallation
  • \n
  • http://purl.org/goodrelations/v1#Dispose
  • \n
  • http://purl.org/goodrelations/v1#LeaseOut
  • \n
  • http://purl.org/goodrelations/v1#Maintain
  • \n
  • http://purl.org/goodrelations/v1#ProvideService
  • \n
  • http://purl.org/goodrelations/v1#Repair
  • \n
  • http://purl.org/goodrelations/v1#Sell
  • \n
  • http://purl.org/goodrelations/v1#Buy
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BusinessFunction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BusinessFunction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/BuyAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of giving money to a seller in exchange for goods or services rendered. An agent buys an object, product, or service from a seller for a price. Reciprocal of SellAction." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/BuyAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "BuyAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TradeAction" + } ] +}, { + "@id" : "https://schema.org/CDCPMDRecord", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A CDCPMDRecord is a data structure representing a record in a CDC tabular data format\n used for hospital data reporting. See documentation for details, and the linked CDC materials for authoritative\n definitions used as the source here." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/CDCPMDRecord" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CDCPMDRecord" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/CableOrSatelliteService", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A service which provides access to media programming like TV or radio. Access may be via cable or satellite." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CableOrSatelliteService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CableOrSatelliteService" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Service" + } ] +}, { + "@id" : "https://schema.org/CafeOrCoffeeShop", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A cafe or coffee shop." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CafeOrCoffeeShop" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CafeOrCoffeeShop" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FoodEstablishment" + } ] +}, { + "@id" : "https://schema.org/Campground", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A camping site, campsite, or Campground is a place used for overnight stay in the outdoors, typically containing individual CampingPitch locations.

\n\nIn British English a campsite is an area, usually divided into a number of pitches, where people can camp overnight using tents or camper vans or caravans; this British English use of the word is synonymous with the American English expression campground. In American English the term campsite generally means an area where an individual, family, group, or military unit can pitch a tent or park a camper; a campground may contain many campsites (source: Wikipedia, see https://en.wikipedia.org/wiki/Campsite).

\n\nSee also the dedicated document on the use of schema.org for marking up hotels and other forms of accommodations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Campground" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Campground" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + }, { + "@id" : "https://schema.org/LodgingBusiness" + } ] +}, { + "@id" : "https://schema.org/CampingPitch", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A CampingPitch is an individual place for overnight stay in the outdoors, typically being part of a larger camping site, or Campground.

\n\nIn British English a campsite, or campground, is an area, usually divided into a number of pitches, where people can camp overnight using tents or camper vans or caravans; this British English use of the word is synonymous with the American English expression campground. In American English the term campsite generally means an area where an individual, family, group, or military unit can pitch a tent or park a camper; a campground may contain many campsites.\n(Source: Wikipedia, see https://en.wikipedia.org/wiki/Campsite.)

\n\nSee also the dedicated document on the use of schema.org for marking up hotels and other forms of accommodations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CampingPitch" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CampingPitch" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Accommodation" + } ] +}, { + "@id" : "https://schema.org/Canal", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A canal, like the Panama Canal." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Canal" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Canal" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BodyOfWater" + } ] +}, { + "@id" : "https://schema.org/CancelAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of asserting that a future event/action is no longer going to happen.

\n\nRelated actions:

\n\n\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CancelAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CancelAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PlanAction" + } ] +}, { + "@id" : "https://schema.org/Car", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A car is a wheeled, self-powered motor vehicle used for transportation." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Car" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Car" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Vehicle" + } ] +}, { + "@id" : "https://schema.org/CarUsageType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A value indicating a special usage of a car, e.g. commercial rental, driving school, or as a taxi." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/CarUsageType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CarUsageType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/Casino", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A casino." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Casino" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Casino" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EntertainmentBusiness" + } ] +}, { + "@id" : "https://schema.org/CategoryCode", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Category Code." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/CategoryCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CategoryCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DefinedTerm" + } ] +}, { + "@id" : "https://schema.org/CategoryCodeSet", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A set of Category Code values." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/CategoryCodeSet" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CategoryCodeSet" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DefinedTermSet" + } ] +}, { + "@id" : "https://schema.org/CatholicChurch", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Catholic church." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CatholicChurch" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CatholicChurch" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Church" + } ] +}, { + "@id" : "https://schema.org/Cemetery", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A graveyard." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Cemetery" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Cemetery" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/Certification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Certification is an official and authoritative statement about a subject, for example a product, service, person, or organization. A certification is typically issued by an indendent certification body, for example a professional organization or government. It formally attests certain characteristics about the subject, for example Organizations can be ISO certified, Food products can be certified Organic or Vegan, a Person can be a certified professional, a Place can be certified for food processing. There are certifications for many domains: regulatory, organizational, recycling, food, efficiency, educational, ecological, etc. A certification is a form of credential, as are accreditations and licenses. Mapped from the gs1:CertificationDetails class in the GS1 Web Vocabulary." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Certification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Certification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/CertificationStatusEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates the different statuses of a Certification (Active and Inactive)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/CertificationStatusEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CertificationStatusEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/Chapter", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "One of the sections into which a book is divided. A chapter usually has a section number or a name." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/Chapter" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Chapter" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/CheckAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An agent inspects, determines, investigates, inquires, or examines an object's accuracy, quality, condition, or state." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CheckAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CheckAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FindAction" + } ] +}, { + "@id" : "https://schema.org/CheckInAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of an agent communicating (service provider, social media, etc) their arrival by registering/confirming for a previously reserved service (e.g. flight check-in) or at a place (e.g. hotel), possibly resulting in a result (boarding pass, etc).

\n\nRelated actions:

\n\n
    \n
  • CheckOutAction: The antonym of CheckInAction.
  • \n
  • ArriveAction: Unlike ArriveAction, CheckInAction implies that the agent is informing/confirming the start of a previously reserved service.
  • \n
  • ConfirmAction: Unlike ConfirmAction, CheckInAction implies that the agent is informing/confirming the start of a previously reserved service rather than its validity/existence.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CheckInAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CheckInAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CommunicateAction" + } ] +}, { + "@id" : "https://schema.org/CheckOutAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of an agent communicating (service provider, social media, etc) their departure of a previously reserved service (e.g. flight check-in) or place (e.g. hotel).

\n\nRelated actions:

\n\n
    \n
  • CheckInAction: The antonym of CheckOutAction.
  • \n
  • DepartAction: Unlike DepartAction, CheckOutAction implies that the agent is informing/confirming the end of a previously reserved service.
  • \n
  • CancelAction: Unlike CancelAction, CheckOutAction implies that the agent is informing/confirming the end of a previously reserved service.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CheckOutAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CheckOutAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CommunicateAction" + } ] +}, { + "@id" : "https://schema.org/CheckoutPage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Web page type: Checkout page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CheckoutPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CheckoutPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPage" + } ] +}, { + "@id" : "https://schema.org/ChemicalSubstance", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A chemical substance is 'a portion of matter of constant composition, composed of molecular entities of the same type or of different types' (source: ChEBI:59999)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ChemicalSubstance" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ChemicalSubstance" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] +}, { + "@id" : "https://schema.org/ChildCare", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Childcare center." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ChildCare" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ChildCare" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/ChildrensEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: Children's event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ChildrensEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ChildrensEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/ChooseAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of expressing a preference from a set of options or a large or unbounded set of choices/options." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ChooseAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ChooseAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AssessAction" + } ] +}, { + "@id" : "https://schema.org/Church", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A church." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Church" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Church" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PlaceOfWorship" + } ] +}, { + "@id" : "https://schema.org/City", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A city or town." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/City" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "City" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AdministrativeArea" + } ] +}, { + "@id" : "https://schema.org/CityHall", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A city hall." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CityHall" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CityHall" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/GovernmentBuilding" + } ] +}, { + "@id" : "https://schema.org/CivicStructure", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A public structure, such as a town hall or concert hall." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CivicStructure" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CivicStructure" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Place" + } ] +}, { + "@id" : "https://schema.org/Claim", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Claim in Schema.org represents a specific, factually-oriented claim that could be the itemReviewed in a ClaimReview. The content of a claim can be summarized with the text property. Variations on well known claims can have their common identity indicated via sameAs links, and summarized with a name. Ideally, a Claim description includes enough contextual information to minimize the risk of ambiguity or inclarity. In practice, many claims are better understood in the context in which they appear or the interpretations provided by claim reviews.

\n\nBeyond ClaimReview, the Claim type can be associated with related creative works - for example a ScholarlyArticle or Question might be about some Claim.

\n\nAt this time, Schema.org does not define any types of relationship between claims. This is a natural area for future exploration." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Claim" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Claim" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/ClaimReview", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A fact-checking review of claims made (or reported) in some creative work (referenced via itemReviewed)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ClaimReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ClaimReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Review" + } ] +}, { + "@id" : "https://schema.org/Class", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A class, also often called a 'Type'; equivalent to rdfs:Class." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://meta.schema.org/Class" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Class" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/Clip", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A short TV or radio program or a segment/part of a program." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Clip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Clip" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/ClothingStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A clothing store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ClothingStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ClothingStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/Code", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Computer programming source code. Example: Full (compile ready) solutions, code snippet samples, scripts, templates." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Code" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Code" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/Collection", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A collection of items, e.g. creative works or products." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/Collection" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Collection" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/CollectionPage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Web page type: Collection page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CollectionPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CollectionPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPage" + } ] +}, { + "@id" : "https://schema.org/CollegeOrUniversity", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A college, university, or other third-level educational institution." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CollegeOrUniversity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CollegeOrUniversity" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EducationalOrganization" + } ] +}, { + "@id" : "https://schema.org/ComedyClub", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A comedy club." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ComedyClub" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ComedyClub" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EntertainmentBusiness" + } ] +}, { + "@id" : "https://schema.org/ComedyEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: Comedy event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ComedyEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ComedyEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/ComicCoverArt", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The artwork on the cover of a comic." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/ComicCoverArt" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ComicCoverArt" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ComicStory" + }, { + "@id" : "https://schema.org/CoverArt" + } ] +}, { + "@id" : "https://schema.org/ComicIssue", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Individual comic issues are serially published as\n part of a larger series. For the sake of consistency, even one-shot issues\n belong to a series comprised of a single issue. All comic issues can be\n uniquely identified by: the combination of the name and volume number of the\n series to which the issue belongs; the issue number; and the variant\n description of the issue (if any)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/ComicIssue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ComicIssue" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PublicationIssue" + } ] +}, { + "@id" : "https://schema.org/ComicSeries", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sequential publication of comic stories under a\n unifying title, for example \"The Amazing Spider-Man\" or \"Groo the\n Wanderer\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/ComicSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ComicSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Periodical" + } ] +}, { + "@id" : "https://schema.org/ComicStory", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The term \"story\" is any indivisible, re-printable\n unit of a comic, including the interior stories, covers, and backmatter. Most\n comics have at least two stories: a cover (ComicCoverArt) and an interior story." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/ComicStory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ComicStory" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/Comment", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A comment on an item - for example, a comment on a blog post. The comment's content is expressed via the text property, and its topic via about, properties shared with all CreativeWorks." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Comment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Comment" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/CommentAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of generating a comment about a subject." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CommentAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CommentAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CommunicateAction" + } ] +}, { + "@id" : "https://schema.org/CommunicateAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of conveying information to another person via a communication medium (instrument) such as speech, email, or telephone conversation." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CommunicateAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CommunicateAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InteractAction" + } ] +}, { + "@id" : "https://schema.org/CompleteDataFeed", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A CompleteDataFeed is a DataFeed whose standard representation includes content for every item currently in the feed.

\n\nThis is the equivalent of Atom's element as defined in Feed Paging and Archiving RFC 5005, for example (and as defined for Atom), when using data from a feed that represents a collection of items that varies over time (e.g. \"Top Twenty Records\") there is no need to have newer entries mixed in alongside older, obsolete entries. By marking this feed as a CompleteDataFeed, old entries can be safely discarded when the feed is refreshed, since we can assume the feed has provided descriptions for all current items." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/CompleteDataFeed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CompleteDataFeed" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DataFeed" + } ] +}, { + "@id" : "https://schema.org/CompoundPriceSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A compound price specification is one that bundles multiple prices that all apply in combination for different dimensions of consumption. Use the name property of the attached unit price specification for indicating the dimension of a price component (e.g. \"electricity\" or \"final cleaning\")." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CompoundPriceSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CompoundPriceSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PriceSpecification" + } ] +}, { + "@id" : "https://schema.org/ComputerLanguage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This type covers computer programming languages such as Scheme and Lisp, as well as other language-like computer representations. Natural languages are best represented with the Language type." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ComputerLanguage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ComputerLanguage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/ComputerStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A computer store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ComputerStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ComputerStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/ConfirmAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of notifying someone that a future event/action is going to happen as expected.

\n\nRelated actions:

\n\n\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ConfirmAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ConfirmAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InformAction" + } ] +}, { + "@id" : "https://schema.org/Consortium", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Consortium is a membership Organization whose members are typically Organizations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Consortium" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Consortium" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/ConstraintNode", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The ConstraintNode type is provided to support usecases in which a node in a structured data graph is described with properties which appear to describe a single entity, but are being used in a situation where they serve a more abstract purpose. A ConstraintNode can be described using constraintProperty and numConstraints. These constraint properties can serve a \n variety of purposes, and their values may sometimes be understood to indicate sets of possible values rather than single, exact and specific values." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ConstraintNode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ConstraintNode" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/ConsumeAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of ingesting information/resources/food." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ConsumeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ConsumeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/ContactPage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Web page type: Contact page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ContactPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ContactPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPage" + } ] +}, { + "@id" : "https://schema.org/ContactPoint", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A contact point—for example, a Customer Complaints department." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ContactPoint" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ContactPoint" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/ContactPointOption", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerated options related to a ContactPoint." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ContactPointOption" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ContactPointOption" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/Continent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "One of the continents (for example, Europe or Africa)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Continent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Continent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Landform" + } ] +}, { + "@id" : "https://schema.org/ControlAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An agent controls a device or application." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ControlAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ControlAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/ConvenienceStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A convenience store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ConvenienceStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ConvenienceStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/Conversation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "One or more messages between organizations or people on a particular topic. Individual messages can be linked to the conversation with isPartOf or hasPart properties." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Conversation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Conversation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/CookAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of producing/preparing food." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CookAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CookAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreateAction" + } ] +}, { + "@id" : "https://schema.org/Corporation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Organization: A business corporation." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Corporation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Corporation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/CorrectionComment", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A comment that corrects CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/CorrectionComment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CorrectionComment" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Comment" + } ] +}, { + "@id" : "https://schema.org/Country", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A country." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Country" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Country" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AdministrativeArea" + } ] +}, { + "@id" : "https://schema.org/Course", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A description of an educational course which may be offered as distinct instances which take place at different times or take place at different locations, or be offered through different media or modes of study. An educational course is a sequence of one or more educational events and/or creative works which aims to build knowledge, competence or ability of learners." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Course" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Course" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/LearningResource" + } ] +}, { + "@id" : "https://schema.org/CourseInstance", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An instance of a Course which is distinct from other instances because it is offered at a different time or location or through different media or modes of study or to a specific section of students." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CourseInstance" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CourseInstance" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/Courthouse", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A courthouse." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Courthouse" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Courthouse" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/GovernmentBuilding" + } ] +}, { + "@id" : "https://schema.org/CoverArt", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The artwork on the outer surface of a CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/CoverArt" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CoverArt" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/VisualArtwork" + } ] +}, { + "@id" : "https://schema.org/CovidTestingFacility", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A CovidTestingFacility is a MedicalClinic where testing for the COVID-19 Coronavirus\n disease is available. If the facility is being made available from an established Pharmacy, Hotel, or other\n non-medical organization, multiple types can be listed. This makes it easier to re-use existing schema.org information\n about that place, e.g. contact info, address, opening hours. Note that in an emergency, such information may not always be reliable." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/CovidTestingFacility" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CovidTestingFacility" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalClinic" + } ] +}, { + "@id" : "https://schema.org/CreateAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of deliberately creating/producing/generating/building a result out of the agent." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CreateAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CreateAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/CreativeWork", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The most generic kind of creative work, including books, movies, photographs, software programs, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CreativeWork" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CreativeWork" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Thing" + } ] +}, { + "@id" : "https://schema.org/CreativeWorkSeason", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A media season, e.g. TV, radio, video game etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CreativeWorkSeason" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/CreativeWorkSeries", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A CreativeWorkSeries in schema.org is a group of related items, typically but not necessarily of the same kind. CreativeWorkSeries are usually organized into some order, often chronological. Unlike ItemList which is a general purpose data structure for lists of things, the emphasis with CreativeWorkSeries is on published materials (written e.g. books and periodicals, or media such as TV, radio and games).

\n\nSpecific subtypes are available for describing TVSeries, RadioSeries, MovieSeries, BookSeries, Periodical and VideoGameSeries. In each case, the hasPart / isPartOf properties can be used to relate the CreativeWorkSeries to its parts. The general CreativeWorkSeries type serves largely just to organize these more specific and practical subtypes.

\n\nIt is common for properties applicable to an item from the series to be usefully applied to the containing group. Schema.org attempts to anticipate some of these cases, but publishers should be free to apply properties of the series parts to the series as a whole wherever they seem appropriate." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CreativeWorkSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CreativeWorkSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/Series" + } ] +}, { + "@id" : "https://schema.org/CreditCard", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A card payment method of a particular brand or name. Used to mark up a particular payment method and/or the financial product/service that supplies the card account.

\n\nCommonly used values:

\n\n
    \n
  • http://purl.org/goodrelations/v1#AmericanExpress
  • \n
  • http://purl.org/goodrelations/v1#DinersClub
  • \n
  • http://purl.org/goodrelations/v1#Discover
  • \n
  • http://purl.org/goodrelations/v1#JCB
  • \n
  • http://purl.org/goodrelations/v1#MasterCard
  • \n
  • http://purl.org/goodrelations/v1#VISA
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CreditCard" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CreditCard" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LoanOrCredit" + }, { + "@id" : "https://schema.org/PaymentCard" + } ] +}, { + "@id" : "https://schema.org/Crematorium", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A crematorium." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Crematorium" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Crematorium" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/CriticReview", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A CriticReview is a more specialized form of Review written or published by a source that is recognized for its reviewing activities. These can include online columns, travel and food guides, TV and radio shows, blogs and other independent Web sites. CriticReviews are typically more in-depth and professionally written. For simpler, casually written user/visitor/viewer/customer reviews, it is more appropriate to use the UserReview type. Review aggregator sites such as Metacritic already separate out the site's user reviews from selected critic reviews that originate from third-party sources." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/CriticReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CriticReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Review" + } ] +}, { + "@id" : "https://schema.org/CssSelectorType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Text representing a CSS selector." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/CssSelectorType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CssSelectorType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Text" + } ] +}, { + "@id" : "https://schema.org/CurrencyConversionService", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A service to convert funds from one currency to another currency." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/CurrencyConversionService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "CurrencyConversionService" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FinancialProduct" + } ] +}, { + "@id" : "https://schema.org/DDxElement", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An alternative, closely-related condition typically considered later in the differential diagnosis process along with the signs that are used to distinguish it." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/DDxElement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DDxElement" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalIntangible" + } ] +}, { + "@id" : "https://schema.org/DanceEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: A social dance." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DanceEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DanceEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/DanceGroup", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A dance group—for example, the Alvin Ailey Dance Theater or Riverdance." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DanceGroup" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DanceGroup" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PerformingGroup" + } ] +}, { + "@id" : "https://schema.org/DataCatalog", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A collection of datasets." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DataCatalog" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DataCatalog" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/DataDownload", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "All or part of a Dataset in downloadable form." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DataDownload" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DataDownload" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MediaObject" + } ] +}, { + "@id" : "https://schema.org/DataFeed", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A single feed providing structured information about one or more entities or topics." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DataFeed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DataFeed" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Dataset" + } ] +}, { + "@id" : "https://schema.org/DataFeedItem", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A single item within a larger data feed." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DataFeedItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DataFeedItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/DataType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The basic data types such as Integers, Strings, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DataType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DataType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "http://www.w3.org/2000/01/rdf-schema#Class" + } ] +}, { + "@id" : "https://schema.org/Dataset", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A body of structured information describing some topic(s) of interest." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Dataset" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Dataset" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/Date", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A date value in ISO 8601 date format." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Date" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Date" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DataType" + } ] +}, { + "@id" : "https://schema.org/DateTime", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A combination of date and time of day in the form [-]CCYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm] (see Chapter 5.4 of ISO 8601)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DateTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DateTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DataType" + } ] +}, { + "@id" : "https://schema.org/DatedMoneySpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A DatedMoneySpecification represents monetary values with optional start and end dates. For example, this could represent an employee's salary over a specific period of time. Note: This type has been superseded by MonetaryAmount, use of that type is recommended." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DatedMoneySpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DatedMoneySpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/DayOfWeek", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The day of the week, e.g. used to specify to which day the opening hours of an OpeningHoursSpecification refer.

\n\nOriginally, URLs from GoodRelations were used (for Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday plus a special entry for PublicHolidays); these have now been integrated directly into schema.org." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DayOfWeek" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DayOfWeek" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/DaySpa", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A day spa." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DaySpa" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DaySpa" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HealthAndBeautyBusiness" + } ] +}, { + "@id" : "https://schema.org/DeactivateAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of stopping or deactivating a device or application (e.g. stopping a timer or turning off a flashlight)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DeactivateAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DeactivateAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ControlAction" + } ] +}, { + "@id" : "https://schema.org/DefenceEstablishment", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A defence establishment, such as an army or navy base." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DefenceEstablishment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DefenceEstablishment" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/GovernmentBuilding" + } ] +}, { + "@id" : "https://schema.org/DefinedRegion", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A DefinedRegion is a geographic area defined by potentially arbitrary (rather than political, administrative or natural geographical) criteria. Properties are provided for defining a region by reference to sets of postal codes.

\n\nExamples: a delivery destination when shopping. Region where regional pricing is configured.

\n\nRequirement 1:\nCountry: US\nStates: \"NY\", \"CA\"

\n\nRequirement 2:\nCountry: US\nPostalCode Set: { [94000-94585], [97000, 97999], [13000, 13599]}\n{ [12345, 12345], [78945, 78945], }\nRegion = state, canton, prefecture, autonomous community..." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/DefinedRegion" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DefinedRegion" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/DefinedTerm", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A word, name, acronym, phrase, etc. with a formal definition. Often used in the context of category or subject classification, glossaries or dictionaries, product or creative work types, etc. Use the name property for the term being defined, use termCode if the term has an alpha-numeric code allocated, use description to provide the definition of the term." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/DefinedTerm" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DefinedTerm" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/DefinedTermSet", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A set of defined terms, for example a set of categories or a classification scheme, a glossary, dictionary or enumeration." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/DefinedTermSet" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DefinedTermSet" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/DeleteAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of editing a recipient by removing one of its objects." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DeleteAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DeleteAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/UpdateAction" + } ] +}, { + "@id" : "https://schema.org/DeliveryChargeSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The price for the delivery of an offer using a particular delivery method." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DeliveryChargeSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DeliveryChargeSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PriceSpecification" + } ] +}, { + "@id" : "https://schema.org/DeliveryEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An event involving the delivery of an item." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DeliveryEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DeliveryEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/DeliveryMethod", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A delivery method is a standardized procedure for transferring the product or service to the destination of fulfillment chosen by the customer. Delivery methods are characterized by the means of transportation used, and by the organization or group that is the contracting party for the sending organization or person.

\n\nCommonly used values:

\n\n
    \n
  • http://purl.org/goodrelations/v1#DeliveryModeDirectDownload
  • \n
  • http://purl.org/goodrelations/v1#DeliveryModeFreight
  • \n
  • http://purl.org/goodrelations/v1#DeliveryModeMail
  • \n
  • http://purl.org/goodrelations/v1#DeliveryModeOwnFleet
  • \n
  • http://purl.org/goodrelations/v1#DeliveryModePickUp
  • \n
  • http://purl.org/goodrelations/v1#DHL
  • \n
  • http://purl.org/goodrelations/v1#FederalExpress
  • \n
  • http://purl.org/goodrelations/v1#UPS
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DeliveryMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DeliveryMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/DeliveryTimeSettings", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A DeliveryTimeSettings represents re-usable pieces of shipping information, relating to timing. It is designed for publication on an URL that may be referenced via the shippingSettingsLink property of an OfferShippingDetails. Several occurrences can be published, distinguished (and identified/referenced) by their different values for transitTimeLabel." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/DeliveryTimeSettings" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DeliveryTimeSettings" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/Demand", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A demand entity represents the public, not necessarily binding, not necessarily exclusive, announcement by an organization or person to seek a certain type of goods or services. For describing demand using this type, the very same properties used for Offer apply." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Demand" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Demand" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/Dentist", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A dentist." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Dentist" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Dentist" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + }, { + "@id" : "https://schema.org/MedicalBusiness" + }, { + "@id" : "https://schema.org/MedicalOrganization" + } ] +}, { + "@id" : "https://schema.org/DepartAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of departing from a place. An agent departs from a fromLocation for a destination, optionally with participants." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DepartAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DepartAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MoveAction" + } ] +}, { + "@id" : "https://schema.org/DepartmentStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A department store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DepartmentStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DepartmentStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/DepositAccount", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A type of Bank Account with a main purpose of depositing funds to gain interest or other benefits." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DepositAccount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DepositAccount" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BankAccount" + }, { + "@id" : "https://schema.org/InvestmentOrDeposit" + } ] +}, { + "@id" : "https://schema.org/DiagnosticLab", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical laboratory that offers on-site or off-site diagnostic services." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/DiagnosticLab" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DiagnosticLab" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalOrganization" + } ] +}, { + "@id" : "https://schema.org/DiagnosticProcedure", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical procedure intended primarily for diagnostic, as opposed to therapeutic, purposes." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/DiagnosticProcedure" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DiagnosticProcedure" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalProcedure" + } ] +}, { + "@id" : "https://schema.org/Diet", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A strategy of regulating the intake of food to achieve or maintain a specific health-related goal." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/Diet" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Diet" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/LifestyleModification" + } ] +}, { + "@id" : "https://schema.org/DietarySupplement", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A product taken by mouth that contains a dietary ingredient intended to supplement the diet. Dietary ingredients may include vitamins, minerals, herbs or other botanicals, amino acids, and substances such as enzymes, organ tissues, glandulars and metabolites." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/DietarySupplement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DietarySupplement" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Substance" + } ] +}, { + "@id" : "https://schema.org/DigitalDocument", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An electronic file or document." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DigitalDocument" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DigitalDocument" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/DigitalDocumentPermission", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A permission for a particular person or group to access a particular file." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DigitalDocumentPermission" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DigitalDocumentPermission" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/DigitalDocumentPermissionType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A type of permission which can be granted for accessing a digital document." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DigitalDocumentPermissionType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DigitalDocumentPermissionType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/DigitalPlatformEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates some common technology platforms, for use with properties such as actionPlatform. It is not supposed to be comprehensive - when a suitable code is not enumerated here, textual or URL values can be used instead. These codes are at a fairly high level and do not deal with versioning and other nuance. Additional codes can be suggested in github." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/DigitalPlatformEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DigitalPlatformEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/DisagreeAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of expressing a difference of opinion with the object. An agent disagrees to/about an object (a proposition, topic or theme) with participants." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DisagreeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DisagreeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ReactAction" + } ] +}, { + "@id" : "https://schema.org/DiscoverAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of discovering/finding an object." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DiscoverAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DiscoverAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FindAction" + } ] +}, { + "@id" : "https://schema.org/DiscussionForumPosting", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A posting to a discussion forum." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DiscussionForumPosting" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DiscussionForumPosting" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/SocialMediaPosting" + } ] +}, { + "@id" : "https://schema.org/DislikeAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of expressing a negative sentiment about the object. An agent dislikes an object (a proposition, topic or theme) with participants." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DislikeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DislikeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ReactAction" + } ] +}, { + "@id" : "https://schema.org/Distance", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Properties that take Distances as values are of the form '<Number> <Length unit of measure>'. E.g., '7 ft'." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Distance" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Distance" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Quantity" + } ] +}, { + "@id" : "https://schema.org/Distillery", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A distillery." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Distillery" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Distillery" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FoodEstablishment" + } ] +}, { + "@id" : "https://schema.org/DonateAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of providing goods, services, or money without compensation, often for philanthropic reasons." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DonateAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DonateAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TradeAction" + } ] +}, { + "@id" : "https://schema.org/DoseSchedule", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A specific dosing schedule for a drug or supplement." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/DoseSchedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DoseSchedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalIntangible" + } ] +}, { + "@id" : "https://schema.org/DownloadAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of downloading an object." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DownloadAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DownloadAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TransferAction" + } ] +}, { + "@id" : "https://schema.org/DrawAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of producing a visual/graphical representation of an object, typically with a pen/pencil and paper as instruments." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DrawAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DrawAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreateAction" + } ] +}, { + "@id" : "https://schema.org/Drawing", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A picture or diagram made with a pencil, pen, or crayon rather than paint." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Drawing" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Drawing" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/DrinkAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of swallowing liquids." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DrinkAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DrinkAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ConsumeAction" + } ] +}, { + "@id" : "https://schema.org/DriveWheelConfigurationValue", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A value indicating which roadwheels will receive torque." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DriveWheelConfigurationValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DriveWheelConfigurationValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/QualitativeValue" + } ] +}, { + "@id" : "https://schema.org/Drug", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A chemical or biologic substance, used as a medical therapy, that has a physiological effect on an organism. Here the term drug is used interchangeably with the term medicine although clinical knowledge makes a clear difference between them." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/Drug" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Drug" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Product" + }, { + "@id" : "https://schema.org/Substance" + } ] +}, { + "@id" : "https://schema.org/DrugClass", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A class of medical drugs, e.g., statins. Classes can represent general pharmacological class, common mechanisms of action, common physiological effects, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/DrugClass" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DrugClass" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/DrugCost", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The cost per unit of a medical drug. Note that this type is not meant to represent the price in an offer of a drug for sale; see the Offer type for that. This type will typically be used to tag wholesale or average retail cost of a drug, or maximum reimbursable cost. Costs of medical drugs vary widely depending on how and where they are paid for, so while this type captures some of the variables, costs should be used with caution by consumers of this schema's markup." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/DrugCost" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DrugCost" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/DrugCostCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerated categories of medical drug costs." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/DrugCostCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DrugCostCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + } ] +}, { + "@id" : "https://schema.org/DrugLegalStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The legal availability status of a medical drug." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/DrugLegalStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DrugLegalStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalIntangible" + } ] +}, { + "@id" : "https://schema.org/DrugPregnancyCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Categories that represent an assessment of the risk of fetal injury due to a drug or pharmaceutical used as directed by the mother during pregnancy." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/DrugPregnancyCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DrugPregnancyCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + } ] +}, { + "@id" : "https://schema.org/DrugPrescriptionStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether this drug is available by prescription or over-the-counter." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/DrugPrescriptionStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DrugPrescriptionStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + } ] +}, { + "@id" : "https://schema.org/DrugStrength", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A specific strength in which a medical drug is available in a specific country." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/DrugStrength" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DrugStrength" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalIntangible" + } ] +}, { + "@id" : "https://schema.org/DryCleaningOrLaundry", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A dry-cleaning business." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/DryCleaningOrLaundry" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "DryCleaningOrLaundry" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/Duration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Quantity: Duration (use ISO 8601 duration format)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Duration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Duration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Quantity" + } ] +}, { + "@id" : "https://schema.org/EUEnergyEfficiencyEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates the EU energy efficiency classes A-G as well as A+, A++, and A+++ as defined in EU directive 2017/1369." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/EUEnergyEfficiencyEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EUEnergyEfficiencyEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EnergyEfficiencyEnumeration" + } ] +}, { + "@id" : "https://schema.org/EatAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of swallowing solid objects." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EatAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EatAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ConsumeAction" + } ] +}, { + "@id" : "https://schema.org/EducationEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: Education event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EducationEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EducationEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/EducationalAudience", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An EducationalAudience." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EducationalAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EducationalAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Audience" + } ] +}, { + "@id" : "https://schema.org/EducationalOccupationalCredential", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An educational or occupational credential. A diploma, academic degree, certification, qualification, badge, etc., that may be awarded to a person or other entity that meets the requirements defined by the credentialer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/EducationalOccupationalCredential" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EducationalOccupationalCredential" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/EducationalOccupationalProgram", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A program offered by an institution which determines the learning progress to achieve an outcome, usually a credential like a degree or certificate. This would define a discrete set of opportunities (e.g., job, courses) that together constitute a program with a clear start, end, set of requirements, and transition to a new occupational opportunity (e.g., a job), or sometimes a higher educational opportunity (e.g., an advanced degree)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/EducationalOccupationalProgram" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EducationalOccupationalProgram" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/EducationalOrganization", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An educational organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EducationalOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EducationalOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + }, { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/Electrician", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An electrician." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Electrician" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Electrician" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HomeAndConstructionBusiness" + } ] +}, { + "@id" : "https://schema.org/ElectronicsStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An electronics store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ElectronicsStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ElectronicsStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/ElementarySchool", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An elementary school." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ElementarySchool" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ElementarySchool" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EducationalOrganization" + } ] +}, { + "@id" : "https://schema.org/EmailMessage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An email message." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EmailMessage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EmailMessage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Message" + } ] +}, { + "@id" : "https://schema.org/Embassy", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An embassy." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Embassy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Embassy" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/GovernmentBuilding" + } ] +}, { + "@id" : "https://schema.org/EmergencyService", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An emergency service, such as a fire station or ER." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EmergencyService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EmergencyService" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/EmployeeRole", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A subclass of OrganizationRole used to describe employee relationships." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EmployeeRole" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EmployeeRole" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/OrganizationRole" + } ] +}, { + "@id" : "https://schema.org/EmployerAggregateRating", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An aggregate rating of an Organization related to its role as an employer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EmployerAggregateRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EmployerAggregateRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AggregateRating" + } ] +}, { + "@id" : "https://schema.org/EmployerReview", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An EmployerReview is a review of an Organization regarding its role as an employer, written by a current or former employee of that organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/EmployerReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EmployerReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Review" + } ] +}, { + "@id" : "https://schema.org/EmploymentAgency", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An employment agency." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EmploymentAgency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EmploymentAgency" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/EndorseAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An agent approves/certifies/likes/supports/sanctions an object." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EndorseAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EndorseAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ReactAction" + } ] +}, { + "@id" : "https://schema.org/EndorsementRating", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An EndorsementRating is a rating that expresses some level of endorsement, for example inclusion in a \"critic's pick\" blog, a\n\"Like\" or \"+1\" on a social network. It can be considered the result of an EndorseAction in which the object of the action is rated positively by\nsome agent. As is common elsewhere in schema.org, it is sometimes more useful to describe the results of such an action without explicitly describing the Action.

\n\nAn EndorsementRating may be part of a numeric scale or organized system, but this is not required: having an explicit type for indicating a positive,\nendorsement rating is particularly useful in the absence of numeric scales as it helps consumers understand that the rating is broadly positive." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EndorsementRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EndorsementRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Rating" + } ] +}, { + "@id" : "https://schema.org/Energy", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Properties that take Energy as values are of the form '<Number> <Energy unit of measure>'." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Energy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Energy" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Quantity" + } ] +}, { + "@id" : "https://schema.org/EnergyConsumptionDetails", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "EnergyConsumptionDetails represents information related to the energy efficiency of a product that consumes energy. The information that can be provided is based on international regulations such as for example EU directive 2017/1369 for energy labeling and the Energy labeling rule under the Energy Policy and Conservation Act (EPCA) in the US." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/EnergyConsumptionDetails" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EnergyConsumptionDetails" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/EnergyEfficiencyEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates energy efficiency levels (also known as \"classes\" or \"ratings\") and certifications that are part of several international energy efficiency standards." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/EnergyEfficiencyEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EnergyEfficiencyEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/EnergyStarEnergyEfficiencyEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Used to indicate whether a product is EnergyStar certified." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/EnergyStarEnergyEfficiencyEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EnergyStarEnergyEfficiencyEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EnergyEfficiencyEnumeration" + } ] +}, { + "@id" : "https://schema.org/EngineSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Information about the engine of the vehicle. A vehicle can have multiple engines represented by multiple engine specification entities." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EngineSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EngineSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/EntertainmentBusiness", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A business providing entertainment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EntertainmentBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EntertainmentBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/EntryPoint", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An entry point, within some Web-based protocol." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EntryPoint" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EntryPoint" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/Enumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Lists or enumerations—for example, a list of cuisines or music genres, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Enumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Enumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/Episode", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A media episode (e.g. TV, radio, video game) which can be part of a series or season." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Episode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Episode" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/Event", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An event happening at a certain time and location, such as a concert, lecture, or festival. Ticketing information may be added via the offers property. Repeated events may be structured as separate Event objects." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Event" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Event" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Thing" + } ] +}, { + "@id" : "https://schema.org/EventAttendanceModeEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An EventAttendanceModeEnumeration value is one of potentially several modes of organising an event, relating to whether it is online or offline." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/EventAttendanceModeEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EventAttendanceModeEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/EventReservation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A reservation for an event like a concert, sporting event, or lecture.

\n\nNote: This type is for information about actual reservations, e.g. in confirmation emails or HTML pages with individual confirmations of reservations. For offers of tickets, use Offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EventReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EventReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Reservation" + } ] +}, { + "@id" : "https://schema.org/EventSeries", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A series of Events. Included events can relate with the series using the superEvent property.

\n\nAn EventSeries is a collection of events that share some unifying characteristic. For example, \"The Olympic Games\" is a series, which\nis repeated regularly. The \"2012 London Olympics\" can be presented both as an Event in the series \"Olympic Games\", and as an\nEventSeries that included a number of sporting competitions as Events.

\n\nThe nature of the association between the events in an EventSeries can vary, but typical examples could\ninclude a thematic event series (e.g. topical meetups or classes), or a series of regular events that share a location, attendee group and/or organizers.

\n\nEventSeries has been defined as a kind of Event to make it easy for publishers to use it in an Event context without\nworrying about which kinds of series are really event-like enough to call an Event. In general an EventSeries\nmay seem more Event-like when the period of time is compact and when aspects such as location are fixed, but\nit may also sometimes prove useful to describe a longer-term series as an Event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/EventSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EventSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + }, { + "@id" : "https://schema.org/Series" + } ] +}, { + "@id" : "https://schema.org/EventStatusType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "EventStatusType is an enumeration type whose instances represent several states that an Event may be in." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EventStatusType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EventStatusType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StatusEnumeration" + } ] +}, { + "@id" : "https://schema.org/EventVenue", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An event venue." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/EventVenue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "EventVenue" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/ExchangeRateSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A structured value representing exchange rate." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ExchangeRateSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ExchangeRateSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/ExerciseAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of participating in exertive activity for the purposes of improving health and fitness." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ExerciseAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ExerciseAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PlayAction" + } ] +}, { + "@id" : "https://schema.org/ExerciseGym", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A gym." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ExerciseGym" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ExerciseGym" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/SportsActivityLocation" + } ] +}, { + "@id" : "https://schema.org/ExercisePlan", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Fitness-related activity designed for a specific health-related purpose, including defined exercise routines as well as activity prescribed by a clinician." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/ExercisePlan" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ExercisePlan" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/PhysicalActivity" + } ] +}, { + "@id" : "https://schema.org/ExhibitionEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: Exhibition event, e.g. at a museum, library, archive, tradeshow, ..." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ExhibitionEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ExhibitionEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/FAQPage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A FAQPage is a WebPage presenting one or more \"Frequently asked questions\" (see also QAPage)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FAQPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FAQPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPage" + } ] +}, { + "@id" : "https://schema.org/FMRadioChannel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A radio channel that uses FM." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FMRadioChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FMRadioChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/RadioChannel" + } ] +}, { + "@id" : "https://schema.org/False", + "@type" : [ "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The boolean value false." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/False" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "False" + } ] +}, { + "@id" : "https://schema.org/FastFoodRestaurant", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A fast-food restaurant." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FastFoodRestaurant" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FastFoodRestaurant" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FoodEstablishment" + } ] +}, { + "@id" : "https://schema.org/Festival", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: Festival." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Festival" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Festival" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/FilmAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of capturing sound and moving images on film, video, or digitally." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FilmAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FilmAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreateAction" + } ] +}, { + "@id" : "https://schema.org/FinancialProduct", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A product provided to consumers and businesses by financial institutions such as banks, insurance companies, brokerage firms, consumer finance companies, and investment companies which comprise the financial services industry." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FinancialProduct" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FinancialProduct" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Service" + } ] +}, { + "@id" : "https://schema.org/FinancialService", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Financial services business." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FinancialService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FinancialService" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/FindAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of finding an object.

\n\nRelated actions:

\n\n
    \n
  • SearchAction: FindAction is generally lead by a SearchAction, but not necessarily.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FindAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FindAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/FireStation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A fire station. With firemen." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FireStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FireStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + }, { + "@id" : "https://schema.org/EmergencyService" + } ] +}, { + "@id" : "https://schema.org/Flight", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An airline flight." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Flight" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Flight" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Trip" + } ] +}, { + "@id" : "https://schema.org/FlightReservation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A reservation for air travel.

\n\nNote: This type is for information about actual reservations, e.g. in confirmation emails or HTML pages with individual confirmations of reservations. For offers of tickets, use Offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FlightReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FlightReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Reservation" + } ] +}, { + "@id" : "https://schema.org/Float", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Data type: Floating number." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Float" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Float" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Number" + } ] +}, { + "@id" : "https://schema.org/FloorPlan", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A FloorPlan is an explicit representation of a collection of similar accommodations, allowing the provision of common information (room counts, sizes, layout diagrams) and offers for rental or sale. In typical use, some ApartmentComplex has an accommodationFloorPlan which is a FloorPlan. A FloorPlan is always in the context of a particular place, either a larger ApartmentComplex or a single Apartment. The visual/spatial aspects of a floor plan (i.e. room layout, see wikipedia) can be indicated using image." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/FloorPlan" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FloorPlan" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/Florist", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A florist." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Florist" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Florist" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/FollowAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of forming a personal connection with someone/something (object) unidirectionally/asymmetrically to get updates polled from.

\n\nRelated actions:

\n\n
    \n
  • BefriendAction: Unlike BefriendAction, FollowAction implies that the connection is not necessarily reciprocal.
  • \n
  • SubscribeAction: Unlike SubscribeAction, FollowAction implies that the follower acts as an active agent constantly/actively polling for updates.
  • \n
  • RegisterAction: Unlike RegisterAction, FollowAction implies that the agent is interested in continuing receiving updates from the object.
  • \n
  • JoinAction: Unlike JoinAction, FollowAction implies that the agent is interested in getting updates from the object.
  • \n
  • TrackAction: Unlike TrackAction, FollowAction refers to the polling of updates of all aspects of animate objects rather than the location of inanimate objects (e.g. you track a package, but you don't follow it).
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FollowAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FollowAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InteractAction" + } ] +}, { + "@id" : "https://schema.org/FoodEstablishment", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A food-related business." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FoodEstablishment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FoodEstablishment" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/FoodEstablishmentReservation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A reservation to dine at a food-related business.

\n\nNote: This type is for information about actual reservations, e.g. in confirmation emails or HTML pages with individual confirmations of reservations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FoodEstablishmentReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FoodEstablishmentReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Reservation" + } ] +}, { + "@id" : "https://schema.org/FoodEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: Food event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FoodEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FoodEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/FoodService", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A food service, like breakfast, lunch, or dinner." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FoodService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FoodService" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Service" + } ] +}, { + "@id" : "https://schema.org/FundingAgency", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A FundingAgency is an organization that implements one or more FundingSchemes and manages\n the granting process (via Grants, typically MonetaryGrants).\n A funding agency is not always required for grant funding, e.g. philanthropic giving, corporate sponsorship etc.

\n\nExamples of funding agencies include ERC, REA, NIH, Bill and Melinda Gates Foundation, ..." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/FundingAgency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FundingAgency" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Project" + } ] +}, { + "@id" : "https://schema.org/FundingScheme", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A FundingScheme combines organizational, project and policy aspects of grant-based funding\n that sets guidelines, principles and mechanisms to support other kinds of projects and activities.\n Funding is typically organized via Grant funding. Examples of funding schemes: Swiss Priority Programmes (SPPs); EU Framework 7 (FP7); Horizon 2020; the NIH-R01 Grant Program; Wellcome institutional strategic support fund. For large scale public sector funding, the management and administration of grant awards is often handled by other, dedicated, organizations - FundingAgencys such as ERC, REA, ..." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/FundingScheme" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FundingScheme" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/FurnitureStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A furniture store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/FurnitureStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "FurnitureStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/Game", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Game type represents things which are games. These are typically rule-governed recreational activities, e.g. role-playing games in which players assume the role of characters in a fictional setting." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Game" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Game" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/GameAvailabilityEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For a VideoGame, such as used with a PlayGameAction, an enumeration of the kind of game availability offered." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/GameAvailabilityEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GameAvailabilityEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/GamePlayMode", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether this game is multi-player, co-op or single-player." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GamePlayMode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GamePlayMode" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/GameServer", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Server that provides game interaction in a multiplayer game." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GameServer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GameServer" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/GameServerStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Status of a game server." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GameServerStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GameServerStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StatusEnumeration" + } ] +}, { + "@id" : "https://schema.org/GardenStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A garden store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GardenStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GardenStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/GasStation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A gas station." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GasStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GasStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AutomotiveBusiness" + } ] +}, { + "@id" : "https://schema.org/GatedResidenceCommunity", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Residence type: Gated community." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GatedResidenceCommunity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GatedResidenceCommunity" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Residence" + } ] +}, { + "@id" : "https://schema.org/GenderType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An enumeration of genders." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GenderType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GenderType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/Gene", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A discrete unit of inheritance which affects one or more biological traits (Source: https://en.wikipedia.org/wiki/Gene). Examples include FOXP2 (Forkhead box protein P2), SCARNA21 (small Cajal body-specific RNA 21), A- (agouti genotype)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Gene" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Gene" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] +}, { + "@id" : "https://schema.org/GeneralContractor", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A general contractor." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GeneralContractor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GeneralContractor" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HomeAndConstructionBusiness" + } ] +}, { + "@id" : "https://schema.org/GeoCircle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A GeoCircle is a GeoShape representing a circular geographic area. As it is a GeoShape\n it provides the simple textual property 'circle', but also allows the combination of postalCode alongside geoRadius.\n The center of the circle can be indicated via the 'geoMidpoint' property, or more approximately using 'address', 'postalCode'." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GeoCircle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GeoCircle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/GeoShape" + } ] +}, { + "@id" : "https://schema.org/GeoCoordinates", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The geographic coordinates of a place or event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GeoCoordinates" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GeoCoordinates" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/GeoShape", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The geographic shape of a place. A GeoShape can be described using several properties whose values are based on latitude/longitude pairs. Either whitespace or commas can be used to separate latitude and longitude; whitespace should be used when writing a list of several such points." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GeoShape" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GeoShape" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/GeospatialGeometry", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "(Eventually to be defined as) a supertype of GeoShape designed to accommodate definitions from Geo-Spatial best practices." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/GeospatialGeometry" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GeospatialGeometry" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/GiveAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of transferring ownership of an object to a destination. Reciprocal of TakeAction.

\n\nRelated actions:

\n\n
    \n
  • TakeAction: Reciprocal of GiveAction.
  • \n
  • SendAction: Unlike SendAction, GiveAction implies that ownership is being transferred (e.g. I may send my laptop to you, but that doesn't mean I'm giving it to you).
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GiveAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GiveAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TransferAction" + } ] +}, { + "@id" : "https://schema.org/GolfCourse", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A golf course." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GolfCourse" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GolfCourse" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/SportsActivityLocation" + } ] +}, { + "@id" : "https://schema.org/GovernmentBenefitsType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "GovernmentBenefitsType enumerates several kinds of government benefits to support the COVID-19 situation. Note that this structure may not capture all benefits offered." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/GovernmentBenefitsType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GovernmentBenefitsType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/GovernmentBuilding", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A government building." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GovernmentBuilding" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GovernmentBuilding" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/GovernmentOffice", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A government office—for example, an IRS or DMV office." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GovernmentOffice" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GovernmentOffice" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/GovernmentOrganization", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A governmental organization or agency." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GovernmentOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GovernmentOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/GovernmentPermit", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A permit issued by a government agency." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GovernmentPermit" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GovernmentPermit" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Permit" + } ] +}, { + "@id" : "https://schema.org/GovernmentService", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A service provided by a government organization, e.g. food stamps, veterans benefits, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GovernmentService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GovernmentService" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Service" + } ] +}, { + "@id" : "https://schema.org/Grant", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A grant, typically financial or otherwise quantifiable, of resources. Typically a funder sponsors some MonetaryAmount to an Organization or Person,\n sometimes not necessarily via a dedicated or long-lived Project, resulting in one or more outputs, or fundedItems. For financial sponsorship, indicate the funder of a MonetaryGrant. For non-financial support, indicate sponsor of Grants of resources (e.g. office space).

\n\nGrants support activities directed towards some agreed collective goals, often but not always organized as Projects. Long-lived projects are sometimes sponsored by a variety of grants over time, but it is also common for a project to be associated with a single grant.

\n\nThe amount of a Grant is represented using amount as a MonetaryAmount." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Grant" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Grant" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/GroceryStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A grocery store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/GroceryStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "GroceryStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/Guide", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Guide is a page or article that recommends specific products or services, or aspects of a thing for a user to consider. A Guide may represent a Buying Guide and detail aspects of products or services for a user to consider. A Guide may represent a Product Guide and recommend specific products or services. A Guide may represent a Ranked List and recommend specific products or services with ranking." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Guide" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Guide" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/HVACBusiness", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A business that provides Heating, Ventilation and Air Conditioning services." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HVACBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HVACBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HomeAndConstructionBusiness" + } ] +}, { + "@id" : "https://schema.org/Hackathon", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A hackathon event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Hackathon" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Hackathon" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/HairSalon", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A hair salon." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HairSalon" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HairSalon" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HealthAndBeautyBusiness" + } ] +}, { + "@id" : "https://schema.org/HardwareStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A hardware store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HardwareStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HardwareStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/HealthAndBeautyBusiness", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Health and beauty." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HealthAndBeautyBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HealthAndBeautyBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/HealthAspectEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "HealthAspectEnumeration enumerates several aspects of health content online, each of which might be described using hasHealthAspect and HealthTopicContent." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/HealthAspectEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HealthAspectEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/HealthClub", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A health club." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HealthClub" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HealthClub" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HealthAndBeautyBusiness" + }, { + "@id" : "https://schema.org/SportsActivityLocation" + } ] +}, { + "@id" : "https://schema.org/HealthInsurancePlan", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A US-style health insurance plan, including PPOs, EPOs, and HMOs." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/HealthInsurancePlan" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HealthInsurancePlan" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/HealthPlanCostSharingSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A description of costs to the patient under a given network or formulary." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/HealthPlanCostSharingSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HealthPlanCostSharingSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/HealthPlanFormulary", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For a given health insurance plan, the specification for costs and coverage of prescription drugs." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/HealthPlanFormulary" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HealthPlanFormulary" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/HealthPlanNetwork", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A US-style health insurance plan network." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/HealthPlanNetwork" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HealthPlanNetwork" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/HealthTopicContent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "HealthTopicContent is WebContent that is about some aspect of a health topic, e.g. a condition, its symptoms or treatments. Such content may be comprised of several parts or sections and use different types of media. Multiple instances of WebContent (and hence HealthTopicContent) can be related using hasPart / isPartOf where there is some kind of content hierarchy, and their content described with about and mentions e.g. building upon the existing MedicalCondition vocabulary." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/HealthTopicContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HealthTopicContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebContent" + } ] +}, { + "@id" : "https://schema.org/HighSchool", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A high school." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HighSchool" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HighSchool" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EducationalOrganization" + } ] +}, { + "@id" : "https://schema.org/HinduTemple", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Hindu temple." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HinduTemple" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HinduTemple" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PlaceOfWorship" + } ] +}, { + "@id" : "https://schema.org/HobbyShop", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A store that sells materials useful or necessary for various hobbies." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HobbyShop" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HobbyShop" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/HomeAndConstructionBusiness", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A construction business.

\n\nA HomeAndConstructionBusiness is a LocalBusiness that provides services around homes and buildings.

\n\nAs a LocalBusiness it can be described as a provider of one or more Service(s)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HomeAndConstructionBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HomeAndConstructionBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/HomeGoodsStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A home goods store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HomeGoodsStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HomeGoodsStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/Hospital", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A hospital." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Hospital" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Hospital" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + }, { + "@id" : "https://schema.org/EmergencyService" + }, { + "@id" : "https://schema.org/MedicalOrganization" + } ] +}, { + "@id" : "https://schema.org/Hostel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A hostel - cheap accommodation, often in shared dormitories.\n

\nSee also the dedicated document on the use of schema.org for marking up hotels and other forms of accommodations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Hostel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Hostel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LodgingBusiness" + } ] +}, { + "@id" : "https://schema.org/Hotel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A hotel is an establishment that provides lodging paid on a short-term basis (source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Hotel).\n

\nSee also the dedicated document on the use of schema.org for marking up hotels and other forms of accommodations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Hotel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Hotel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LodgingBusiness" + } ] +}, { + "@id" : "https://schema.org/HotelRoom", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A hotel room is a single room in a hotel.\n

\nSee also the dedicated document on the use of schema.org for marking up hotels and other forms of accommodations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HotelRoom" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HotelRoom" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Room" + } ] +}, { + "@id" : "https://schema.org/House", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A house is a building or structure that has the ability to be occupied for habitation by humans or other creatures (source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/House)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/House" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "House" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Accommodation" + } ] +}, { + "@id" : "https://schema.org/HousePainter", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A house painting service." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HousePainter" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HousePainter" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HomeAndConstructionBusiness" + } ] +}, { + "@id" : "https://schema.org/HowTo", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Instructions that explain how to achieve a result by performing a sequence of steps." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HowTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HowTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/HowToDirection", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A direction indicating a single action to do in the instructions for how to achieve a result." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HowToDirection" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HowToDirection" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/ListItem" + } ] +}, { + "@id" : "https://schema.org/HowToItem", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An item used as either a tool or supply when performing the instructions for how to achieve a result." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HowToItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HowToItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ListItem" + } ] +}, { + "@id" : "https://schema.org/HowToSection", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub-grouping of steps in the instructions for how to achieve a result (e.g. steps for making a pie crust within a pie recipe)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HowToSection" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HowToSection" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/ItemList" + }, { + "@id" : "https://schema.org/ListItem" + } ] +}, { + "@id" : "https://schema.org/HowToStep", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A step in the instructions for how to achieve a result. It is an ordered list with HowToDirection and/or HowToTip items." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HowToStep" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HowToStep" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/ItemList" + }, { + "@id" : "https://schema.org/ListItem" + } ] +}, { + "@id" : "https://schema.org/HowToSupply", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A supply consumed when performing the instructions for how to achieve a result." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HowToSupply" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HowToSupply" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HowToItem" + } ] +}, { + "@id" : "https://schema.org/HowToTip", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An explanation in the instructions for how to achieve a result. It provides supplementary information about a technique, supply, author's preference, etc. It can explain what could be done, or what should not be done, but doesn't specify what should be done (see HowToDirection)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HowToTip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HowToTip" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/ListItem" + } ] +}, { + "@id" : "https://schema.org/HowToTool", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A tool used (but not consumed) when performing instructions for how to achieve a result." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/HowToTool" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HowToTool" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HowToItem" + } ] +}, { + "@id" : "https://schema.org/HyperToc", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A HyperToc represents a hypertext table of contents for complex media objects, such as VideoObject, AudioObject. Items in the table of contents are indicated using the tocEntry property, and typed HyperTocEntry. For cases where the same larger work is split into multiple files, associatedMedia can be used on individual HyperTocEntry items." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/HyperToc" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HyperToc" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/HyperTocEntry", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A HyperToEntry is an item within a HyperToc, which represents a hypertext table of contents for complex media objects, such as VideoObject, AudioObject. The media object itself is indicated using associatedMedia. Each section of interest within that content can be described with a HyperTocEntry, with associated startOffset and endOffset. When several entries are all from the same file, associatedMedia is used on the overarching HyperTocEntry; if the content has been split into multiple files, they can be referenced using associatedMedia on each HyperTocEntry." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/HyperTocEntry" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "HyperTocEntry" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/IPTCDigitalSourceEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "IPTC \"Digital Source\" codes for use with the digitalSourceType property, providing information about the source for a digital media object. \nIn general these codes are not declared here to be mutually exclusive, although some combinations would be contradictory if applied simultaneously, or might be considered mutually incompatible by upstream maintainers of the definitions. See the IPTC documentation \n for detailed definitions of all terms." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/IPTCDigitalSourceEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "IPTCDigitalSourceEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MediaEnumeration" + } ] +}, { + "@id" : "https://schema.org/IceCreamShop", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An ice cream shop." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/IceCreamShop" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "IceCreamShop" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FoodEstablishment" + } ] +}, { + "@id" : "https://schema.org/IgnoreAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of intentionally disregarding the object. An agent ignores an object." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/IgnoreAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "IgnoreAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AssessAction" + } ] +}, { + "@id" : "https://schema.org/ImageGallery", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Web page type: Image gallery page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ImageGallery" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ImageGallery" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MediaGallery" + } ] +}, { + "@id" : "https://schema.org/ImageObject", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An image file." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ImageObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ImageObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MediaObject" + } ] +}, { + "@id" : "https://schema.org/ImageObjectSnapshot", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A specific and exact (byte-for-byte) version of an ImageObject. Two byte-for-byte identical files, for the purposes of this type, considered identical. If they have different embedded metadata (e.g. XMP, EXIF) the files will differ. Different external facts about the files, e.g. creator or dateCreated that aren't represented in their actual content, do not affect this notion of identity." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ImageObjectSnapshot" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ImageObjectSnapshot" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ImageObject" + } ] +}, { + "@id" : "https://schema.org/ImagingTest", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any medical imaging modality typically used for diagnostic purposes." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/ImagingTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ImagingTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalTest" + } ] +}, { + "@id" : "https://schema.org/IndividualPhysician", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An individual medical practitioner. For their official address use address, for affiliations to hospitals use hospitalAffiliation. \nThe practicesAt property can be used to indicate MedicalOrganization hospitals, clinics, pharmacies etc. where this physician practices." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/IndividualPhysician" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "IndividualPhysician" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Physician" + } ] +}, { + "@id" : "https://schema.org/IndividualProduct", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A single, identifiable product instance (e.g. a laptop with a particular serial number)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/IndividualProduct" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "IndividualProduct" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Product" + } ] +}, { + "@id" : "https://schema.org/InfectiousAgentClass", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Classes of agents or pathogens that transmit infectious diseases. Enumerated type." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/InfectiousAgentClass" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "InfectiousAgentClass" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + } ] +}, { + "@id" : "https://schema.org/InfectiousDisease", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An infectious disease is a clinically evident human disease resulting from the presence of pathogenic microbial agents, like pathogenic viruses, pathogenic bacteria, fungi, protozoa, multicellular parasites, and prions. To be considered an infectious disease, such pathogens are known to be able to cause this disease." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/InfectiousDisease" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "InfectiousDisease" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalCondition" + } ] +}, { + "@id" : "https://schema.org/InformAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of notifying someone of information pertinent to them, with no expectation of a response." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/InformAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "InformAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CommunicateAction" + } ] +}, { + "@id" : "https://schema.org/InsertAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of adding at a specific location in an ordered collection." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/InsertAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "InsertAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AddAction" + } ] +}, { + "@id" : "https://schema.org/InstallAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of installing an application." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/InstallAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "InstallAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ConsumeAction" + } ] +}, { + "@id" : "https://schema.org/InsuranceAgency", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An Insurance agency." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/InsuranceAgency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "InsuranceAgency" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FinancialService" + } ] +}, { + "@id" : "https://schema.org/Intangible", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A utility class that serves as the umbrella for a number of 'intangible' things such as quantities, structured values, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Intangible" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Intangible" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Thing" + } ] +}, { + "@id" : "https://schema.org/Integer", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Data type: Integer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Integer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Integer" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Number" + } ] +}, { + "@id" : "https://schema.org/InteractAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of interacting with another person or organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/InteractAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "InteractAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/InteractionCounter", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A summary of how users have interacted with this CreativeWork. In most cases, authors will use a subtype to specify the specific type of interaction." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/InteractionCounter" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "InteractionCounter" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/InternetCafe", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An internet cafe." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/InternetCafe" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "InternetCafe" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/InvestmentFund", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A company or fund that gathers capital from a number of investors to create a pool of money that is then re-invested into stocks, bonds and other assets." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/InvestmentFund" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "InvestmentFund" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InvestmentOrDeposit" + } ] +}, { + "@id" : "https://schema.org/InvestmentOrDeposit", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A type of financial product that typically requires the client to transfer funds to a financial service in return for potential beneficial financial return." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/InvestmentOrDeposit" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "InvestmentOrDeposit" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FinancialProduct" + } ] +}, { + "@id" : "https://schema.org/InviteAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of asking someone to attend an event. Reciprocal of RsvpAction." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/InviteAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "InviteAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CommunicateAction" + } ] +}, { + "@id" : "https://schema.org/Invoice", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A statement of the money due for goods or services; a bill." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Invoice" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Invoice" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/ItemAvailability", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A list of possible product availability options." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ItemAvailability" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ItemAvailability" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/ItemList", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A list of items of any sort—for example, Top 10 Movies About Weathermen, or Top 100 Party Songs. Not to be confused with HTML lists, which are often used only for formatting." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ItemList" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ItemList" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/ItemListOrderType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerated for values for itemListOrder for indicating how an ordered ItemList is organized." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ItemListOrderType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ItemListOrderType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/ItemPage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A page devoted to a single item, such as a particular product or hotel." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ItemPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ItemPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPage" + } ] +}, { + "@id" : "https://schema.org/JewelryStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A jewelry store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/JewelryStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "JewelryStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/JobPosting", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A listing that describes a job opening in a certain organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/JobPosting" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "JobPosting" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/JoinAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An agent joins an event/group with participants/friends at a location.

\n\nRelated actions:

\n\n
    \n
  • RegisterAction: Unlike RegisterAction, JoinAction refers to joining a group/team of people.
  • \n
  • SubscribeAction: Unlike SubscribeAction, JoinAction does not imply that you'll be receiving updates.
  • \n
  • FollowAction: Unlike FollowAction, JoinAction does not imply that you'll be polling for updates.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/JoinAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "JoinAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InteractAction" + } ] +}, { + "@id" : "https://schema.org/Joint", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The anatomical location at which two or more bones make contact." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/Joint" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Joint" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + } ] +}, { + "@id" : "https://schema.org/LakeBodyOfWater", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A lake (for example, Lake Pontrachain)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LakeBodyOfWater" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LakeBodyOfWater" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BodyOfWater" + } ] +}, { + "@id" : "https://schema.org/Landform", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A landform or physical feature. Landform elements include mountains, plains, lakes, rivers, seascape and oceanic waterbody interface features such as bays, peninsulas, seas and so forth, including sub-aqueous terrain features such as submersed mountain ranges, volcanoes, and the great ocean basins." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Landform" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Landform" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Place" + } ] +}, { + "@id" : "https://schema.org/LandmarksOrHistoricalBuildings", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An historical landmark or building." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LandmarksOrHistoricalBuildings" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LandmarksOrHistoricalBuildings" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Place" + } ] +}, { + "@id" : "https://schema.org/Language", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Natural languages such as Spanish, Tamil, Hindi, English, etc. Formal language code tags expressed in BCP 47 can be used via the alternateName property. The Language type previously also covered programming languages such as Scheme and Lisp, which are now best represented using ComputerLanguage." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Language" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Language" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/LearningResource", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The LearningResource type can be used to indicate CreativeWorks (whether physical or digital) that have a particular and explicit orientation towards learning, education, skill acquisition, and other educational purposes.

\n\nLearningResource is expected to be used as an addition to a primary type such as Book, VideoObject, Product etc.

\n\nEducationEvent serves a similar purpose for event-like things (e.g. a Trip). A LearningResource may be created as a result of an EducationEvent, for example by recording one." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/LearningResource" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LearningResource" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/LeaveAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An agent leaves an event / group with participants/friends at a location.

\n\nRelated actions:

\n\n
    \n
  • JoinAction: The antonym of LeaveAction.
  • \n
  • UnRegisterAction: Unlike UnRegisterAction, LeaveAction implies leaving a group/team of people rather than a service.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LeaveAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LeaveAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InteractAction" + } ] +}, { + "@id" : "https://schema.org/LegalForceStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A list of possible statuses for the legal force of a legislation." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/LegalForceStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LegalForceStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StatusEnumeration" + } ] +}, { + "@id" : "https://schema.org/LegalService", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A LegalService is a business that provides legally-oriented services, advice and representation, e.g. law firms.

\n\nAs a LocalBusiness it can be described as a provider of one or more Service(s)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LegalService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LegalService" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/LegalValueLevel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A list of possible levels for the legal validity of a legislation." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/LegalValueLevel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LegalValueLevel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/Legislation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A legal document such as an act, decree, bill, etc. (enforceable or not) or a component of a legal act (like an article)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Legislation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Legislation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/LegislationObject", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A specific object or file containing a Legislation. Note that the same Legislation can be published in multiple files. For example, a digitally signed PDF, a plain PDF and an HTML version." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/LegislationObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LegislationObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Legislation" + }, { + "@id" : "https://schema.org/MediaObject" + } ] +}, { + "@id" : "https://schema.org/LegislativeBuilding", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A legislative building—for example, the state capitol." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LegislativeBuilding" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LegislativeBuilding" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/GovernmentBuilding" + } ] +}, { + "@id" : "https://schema.org/LendAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of providing an object under an agreement that it will be returned at a later date. Reciprocal of BorrowAction.

\n\nRelated actions:

\n\n\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LendAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LendAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TransferAction" + } ] +}, { + "@id" : "https://schema.org/Library", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A library." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Library" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Library" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/LibrarySystem", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A LibrarySystem is a collaborative system amongst several libraries." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/LibrarySystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LibrarySystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/LifestyleModification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A process of care involving exercise, changes to diet, fitness routines, and other lifestyle changes aimed at improving a health condition." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/LifestyleModification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LifestyleModification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/Ligament", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A short band of tough, flexible, fibrous connective tissue that functions to connect multiple bones, cartilages, and structurally support joints." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/Ligament" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Ligament" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + } ] +}, { + "@id" : "https://schema.org/LikeAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of expressing a positive sentiment about the object. An agent likes an object (a proposition, topic or theme) with participants." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LikeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LikeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ReactAction" + } ] +}, { + "@id" : "https://schema.org/LinkRole", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Role that represents a Web link, e.g. as expressed via the 'url' property. Its linkRelationship property can indicate URL-based and plain textual link types, e.g. those in IANA link registry or others such as 'amphtml'. This structure provides a placeholder where details from HTML's link element can be represented outside of HTML, e.g. in JSON-LD feeds." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/LinkRole" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LinkRole" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Role" + } ] +}, { + "@id" : "https://schema.org/LiquorStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A shop that sells alcoholic drinks such as wine, beer, whisky and other spirits." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LiquorStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LiquorStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/ListItem", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An list item, e.g. a step in a checklist or how-to description." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ListItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ListItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/ListenAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of consuming audio content." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ListenAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ListenAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ConsumeAction" + } ] +}, { + "@id" : "https://schema.org/LiteraryEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: Literary event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LiteraryEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LiteraryEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/LiveBlogPosting", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A LiveBlogPosting is a BlogPosting intended to provide a rolling textual coverage of an ongoing event through continuous updates." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LiveBlogPosting" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LiveBlogPosting" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BlogPosting" + } ] +}, { + "@id" : "https://schema.org/LoanOrCredit", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A financial product for the loaning of an amount of money, or line of credit, under agreed terms and charges." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LoanOrCredit" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LoanOrCredit" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FinancialProduct" + } ] +}, { + "@id" : "https://schema.org/LocalBusiness", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A particular physical business or branch of an organization. Examples of LocalBusiness include a restaurant, a particular branch of a restaurant chain, a branch of a bank, a medical practice, a club, a bowling alley, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LocalBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + }, { + "@id" : "https://schema.org/Place" + } ] +}, { + "@id" : "https://schema.org/LocationFeatureSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies a location feature by providing a structured value representing a feature of an accommodation as a property-value pair of varying degrees of formality." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LocationFeatureSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LocationFeatureSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PropertyValue" + } ] +}, { + "@id" : "https://schema.org/Locksmith", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A locksmith." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Locksmith" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Locksmith" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HomeAndConstructionBusiness" + } ] +}, { + "@id" : "https://schema.org/LodgingBusiness", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A lodging business, such as a motel, hotel, or inn." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LodgingBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LodgingBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/LodgingReservation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A reservation for lodging at a hotel, motel, inn, etc.

\n\nNote: This type is for information about actual reservations, e.g. in confirmation emails or HTML pages with individual confirmations of reservations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LodgingReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LodgingReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Reservation" + } ] +}, { + "@id" : "https://schema.org/LoseAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of being defeated in a competitive activity." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/LoseAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LoseAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AchieveAction" + } ] +}, { + "@id" : "https://schema.org/LymphaticVessel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A type of blood vessel that specifically carries lymph fluid unidirectionally toward the heart." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/LymphaticVessel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "LymphaticVessel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Vessel" + } ] +}, { + "@id" : "https://schema.org/Manuscript", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A book, document, or piece of music written by hand rather than typed or printed." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Manuscript" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Manuscript" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/Map", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A map." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Map" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Map" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/MapCategoryType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An enumeration of several kinds of Map." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MapCategoryType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MapCategoryType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/MarryAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of marrying a person." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MarryAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MarryAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InteractAction" + } ] +}, { + "@id" : "https://schema.org/Mass", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Properties that take Mass as values are of the form '<Number> <Mass unit of measure>'. E.g., '7 kg'." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Mass" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Mass" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Quantity" + } ] +}, { + "@id" : "https://schema.org/MathSolver", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A math solver which is capable of solving a subset of mathematical problems." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/MathSolver" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MathSolver" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/MaximumDoseSchedule", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The maximum dosing schedule considered safe for a drug or supplement as recommended by an authority or by the drug/supplement's manufacturer. Capture the recommending authority in the recognizingAuthority property of MedicalEntity." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MaximumDoseSchedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MaximumDoseSchedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DoseSchedule" + } ] +}, { + "@id" : "https://schema.org/MeasurementMethodEnum", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumeration(s) for use with measurementMethod." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/MeasurementMethodEnum" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MeasurementMethodEnum" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/MeasurementTypeEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumeration of common measurement types (or dimensions), for example \"chest\" for a person, \"inseam\" for pants, \"gauge\" for screws, or \"wheel\" for bicycles." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/MeasurementTypeEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MeasurementTypeEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/MediaEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "MediaEnumeration enumerations are lists of codes, labels etc. useful for describing media objects. They may be reflections of externally developed lists, or created at schema.org, or a combination." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/MediaEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MediaEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/MediaGallery", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Web page type: Media gallery page. A mixed-media page that can contain media such as images, videos, and other multimedia." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MediaGallery" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MediaGallery" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CollectionPage" + } ] +}, { + "@id" : "https://schema.org/MediaManipulationRatingEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Codes for use with the mediaAuthenticityCategory property, indicating the authenticity of a media object (in the context of how it was published or shared). In general these codes are not mutually exclusive, although some combinations (such as 'original' versus 'transformed', 'edited' and 'staged') would be contradictory if applied in the same MediaReview. Note that the application of these codes is with regard to a piece of media shared or published in a particular context." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/MediaManipulationRatingEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MediaManipulationRatingEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/MediaObject", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A media object, such as an image, video, audio, or text object embedded in a web page or a downloadable dataset i.e. DataDownload. Note that a creative work may have many media objects associated with it on the same web page. For example, a page about a single song (MusicRecording) may have a music video (VideoObject), and a high and low bandwidth audio stream (2 AudioObject's)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MediaObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MediaObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/MediaReview", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A MediaReview is a more specialized form of Review dedicated to the evaluation of media content online, typically in the context of fact-checking and misinformation.\n For more general reviews of media in the broader sense, use UserReview, CriticReview or other Review types. This definition is\n a work in progress. While the MediaManipulationRatingEnumeration list reflects significant community review amongst fact-checkers and others working\n to combat misinformation, the specific structures for representing media objects, their versions and publication context, are still evolving. Similarly, best practices for the relationship between MediaReview and ClaimReview markup have not yet been finalized." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/MediaReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MediaReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Review" + } ] +}, { + "@id" : "https://schema.org/MediaReviewItem", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents an item or group of closely related items treated as a unit for the sake of evaluation in a MediaReview. Authorship etc. apply to the items rather than to the curation/grouping or reviewing party." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/MediaReviewItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MediaReviewItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/MediaSubscription", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A subscription which allows a user to access media including audio, video, books, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MediaSubscription" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MediaSubscription" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/MedicalAudience", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Target audiences for medical web pages." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Audience" + }, { + "@id" : "https://schema.org/PeopleAudience" + } ] +}, { + "@id" : "https://schema.org/MedicalAudienceType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Target audiences types for medical web pages. Enumerated type." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalAudienceType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalAudienceType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + } ] +}, { + "@id" : "https://schema.org/MedicalBusiness", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A particular physical or virtual business of an organization for medical purposes. Examples of MedicalBusiness include different businesses run by health professionals." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/MedicalCause", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The causative agent(s) that are responsible for the pathophysiologic process that eventually results in a medical condition, symptom or sign. In this schema, unless otherwise specified this is meant to be the proximate cause of the medical condition, symptom or sign. The proximate cause is defined as the causative agent that most directly results in the medical condition, symptom or sign. For example, the HIV virus could be considered a cause of AIDS. Or in a diagnostic context, if a patient fell and sustained a hip fracture and two days later sustained a pulmonary embolism which eventuated in a cardiac arrest, the cause of the cardiac arrest (the proximate cause) would be the pulmonary embolism and not the fall. Medical causes can include cardiovascular, chemical, dermatologic, endocrine, environmental, gastroenterologic, genetic, hematologic, gynecologic, iatrogenic, infectious, musculoskeletal, neurologic, nutritional, obstetric, oncologic, otolaryngologic, pharmacologic, psychiatric, pulmonary, renal, rheumatologic, toxic, traumatic, or urologic causes; medical conditions can be causes as well." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalCause" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalCause" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/MedicalClinic", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A facility, often associated with a hospital or medical school, that is devoted to the specific diagnosis and/or healthcare. Previously limited to outpatients but with evolution it may be open to inpatients as well." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalClinic" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalClinic" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalBusiness" + }, { + "@id" : "https://schema.org/MedicalOrganization" + } ] +}, { + "@id" : "https://schema.org/MedicalCode", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A code for a medical entity." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CategoryCode" + }, { + "@id" : "https://schema.org/MedicalIntangible" + } ] +}, { + "@id" : "https://schema.org/MedicalCondition", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any condition of the human body that affects the normal functioning of a person, whether physically or mentally. Includes diseases, injuries, disabilities, disorders, syndromes, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalCondition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalCondition" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/MedicalConditionStage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A stage of a medical condition, such as 'Stage IIIa'." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalConditionStage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalConditionStage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalIntangible" + } ] +}, { + "@id" : "https://schema.org/MedicalContraindication", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A condition or factor that serves as a reason to withhold a certain medical therapy. Contraindications can be absolute (there are no reasonable circumstances for undertaking a course of action) or relative (the patient is at higher risk of complications, but these risks may be outweighed by other considerations or mitigated by other measures)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalContraindication" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalContraindication" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/MedicalDevice", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any object used in a medical capacity, such as to diagnose or treat a patient." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalDevice" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalDevice" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/MedicalDevicePurpose", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Categories of medical devices, organized by the purpose or intended use of the device." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalDevicePurpose" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalDevicePurpose" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + } ] +}, { + "@id" : "https://schema.org/MedicalEntity", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The most generic type of entity related to health and the practice of medicine." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalEntity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalEntity" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Thing" + } ] +}, { + "@id" : "https://schema.org/MedicalEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerations related to health and the practice of medicine: A concept that is used to attribute a quality to another concept, as a qualifier, a collection of items or a listing of all of the elements of a set in medicine practice." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/MedicalEvidenceLevel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Level of evidence for a medical guideline. Enumerated type." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalEvidenceLevel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalEvidenceLevel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + } ] +}, { + "@id" : "https://schema.org/MedicalGuideline", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any recommendation made by a standard society (e.g. ACC/AHA) or consensus statement that denotes how to diagnose and treat a particular condition. Note: this type should be used to tag the actual guideline recommendation; if the guideline recommendation occurs in a larger scholarly article, use MedicalScholarlyArticle to tag the overall article, not this type. Note also: the organization making the recommendation should be captured in the recognizingAuthority base property of MedicalEntity." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalGuideline" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalGuideline" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/MedicalGuidelineContraindication", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A guideline contraindication that designates a process as harmful and where quality of the data supporting the contraindication is sound." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalGuidelineContraindication" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalGuidelineContraindication" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalGuideline" + } ] +}, { + "@id" : "https://schema.org/MedicalGuidelineRecommendation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A guideline recommendation that is regarded as efficacious and where quality of the data supporting the recommendation is sound." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalGuidelineRecommendation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalGuidelineRecommendation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalGuideline" + } ] +}, { + "@id" : "https://schema.org/MedicalImagingTechnique", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any medical imaging modality typically used for diagnostic purposes. Enumerated type." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalImagingTechnique" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalImagingTechnique" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + } ] +}, { + "@id" : "https://schema.org/MedicalIndication", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A condition or factor that indicates use of a medical therapy, including signs, symptoms, risk factors, anatomical states, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalIndication" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalIndication" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/MedicalIntangible", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A utility class that serves as the umbrella for a number of 'intangible' things in the medical space." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalIntangible" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalIntangible" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/MedicalObservationalStudy", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An observational study is a type of medical study that attempts to infer the possible effect of a treatment through observation of a cohort of subjects over a period of time. In an observational study, the assignment of subjects into treatment groups versus control groups is outside the control of the investigator. This is in contrast with controlled studies, such as the randomized controlled trials represented by MedicalTrial, where each subject is randomly assigned to a treatment group or a control group before the start of the treatment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalObservationalStudy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalObservationalStudy" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalStudy" + } ] +}, { + "@id" : "https://schema.org/MedicalObservationalStudyDesign", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Design models for observational medical studies. Enumerated type." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalObservationalStudyDesign" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalObservationalStudyDesign" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + } ] +}, { + "@id" : "https://schema.org/MedicalOrganization", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical organization (physical or not), such as hospital, institution or clinic." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MedicalOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/MedicalProcedure", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A process of care used in either a diagnostic, therapeutic, preventive or palliative capacity that relies on invasive (surgical), non-invasive, or other techniques." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalProcedure" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalProcedure" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/MedicalProcedureType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An enumeration that describes different types of medical procedures." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalProcedureType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalProcedureType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + } ] +}, { + "@id" : "https://schema.org/MedicalRiskCalculator", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A complex mathematical calculation requiring an online calculator, used to assess prognosis. Note: use the url property of Thing to record any URLs for online calculators." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalRiskCalculator" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalRiskCalculator" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalRiskEstimator" + } ] +}, { + "@id" : "https://schema.org/MedicalRiskEstimator", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any rule set or interactive tool for estimating the risk of developing a complication or condition." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalRiskEstimator" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalRiskEstimator" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/MedicalRiskFactor", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A risk factor is anything that increases a person's likelihood of developing or contracting a disease, medical condition, or complication." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalRiskFactor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalRiskFactor" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/MedicalRiskScore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A simple system that adds up the number of risk factors to yield a score that is associated with prognosis, e.g. CHAD score, TIMI risk score." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalRiskScore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalRiskScore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalRiskEstimator" + } ] +}, { + "@id" : "https://schema.org/MedicalScholarlyArticle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A scholarly article in the medical domain." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalScholarlyArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalScholarlyArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ScholarlyArticle" + } ] +}, { + "@id" : "https://schema.org/MedicalSign", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any physical manifestation of a person's medical condition discoverable by objective diagnostic tests or physical examination." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalSign" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalSign" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalSignOrSymptom" + } ] +}, { + "@id" : "https://schema.org/MedicalSignOrSymptom", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any feature associated or not with a medical condition. In medicine a symptom is generally subjective while a sign is objective." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalSignOrSymptom" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalSignOrSymptom" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalCondition" + } ] +}, { + "@id" : "https://schema.org/MedicalSpecialty", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any specific branch of medical science or practice. Medical specialities include clinical specialties that pertain to particular organ systems and their respective disease states, as well as allied health specialties. Enumerated type." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalSpecialty" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalSpecialty" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + }, { + "@id" : "https://schema.org/Specialty" + } ] +}, { + "@id" : "https://schema.org/MedicalStudy", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical study is an umbrella type covering all kinds of research studies relating to human medicine or health, including observational studies and interventional trials and registries, randomized, controlled or not. When the specific type of study is known, use one of the extensions of this type, such as MedicalTrial or MedicalObservationalStudy. Also, note that this type should be used to mark up data that describes the study itself; to tag an article that publishes the results of a study, use MedicalScholarlyArticle. Note: use the code property of MedicalEntity to store study IDs, e.g. clinicaltrials.gov ID." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalStudy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalStudy" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/MedicalStudyStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The status of a medical study. Enumerated type." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalStudyStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalStudyStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + } ] +}, { + "@id" : "https://schema.org/MedicalSymptom", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any complaint sensed and expressed by the patient (therefore defined as subjective) like stomachache, lower-back pain, or fatigue." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalSymptom" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalSymptom" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalSignOrSymptom" + } ] +}, { + "@id" : "https://schema.org/MedicalTest", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any medical test, typically performed for diagnostic purposes." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/MedicalTestPanel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any collection of tests commonly ordered together." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalTestPanel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalTestPanel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalTest" + } ] +}, { + "@id" : "https://schema.org/MedicalTherapy", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any medical intervention designed to prevent, treat, and cure human diseases and medical conditions, including both curative and palliative therapies. Medical therapies are typically processes of care relying upon pharmacotherapy, behavioral therapy, supportive therapy (with fluid or nutrition for example), or detoxification (e.g. hemodialysis) aimed at improving or preventing a health condition." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalTherapy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalTherapy" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TherapeuticProcedure" + } ] +}, { + "@id" : "https://schema.org/MedicalTrial", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical trial is a type of medical study that uses a scientific process to compare the safety and efficacy of medical therapies or medical procedures. In general, medical trials are controlled and subjects are allocated at random to the different treatment and/or control groups." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalTrial" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalTrial" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalStudy" + } ] +}, { + "@id" : "https://schema.org/MedicalTrialDesign", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Design models for medical trials. Enumerated type." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalTrialDesign" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalTrialDesign" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + } ] +}, { + "@id" : "https://schema.org/MedicalWebPage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A web page that provides medical information." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicalWebPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicalWebPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPage" + } ] +}, { + "@id" : "https://schema.org/MedicineSystem", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Systems of medical practice." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/MedicineSystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MedicineSystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + } ] +}, { + "@id" : "https://schema.org/MeetingRoom", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A meeting room, conference room, or conference hall is a room provided for singular events such as business conferences and meetings (source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Conference_hall).\n

\nSee also the dedicated document on the use of schema.org for marking up hotels and other forms of accommodations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MeetingRoom" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MeetingRoom" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Room" + } ] +}, { + "@id" : "https://schema.org/MensClothingStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A men's clothing store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MensClothingStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MensClothingStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/Menu", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A structured representation of food or drink items available from a FoodEstablishment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Menu" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Menu" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/MenuItem", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A food or drink item listed in a menu or menu section." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MenuItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MenuItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/MenuSection", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub-grouping of food or drink items in a menu. E.g. courses (such as 'Dinner', 'Breakfast', etc.), specific type of dishes (such as 'Meat', 'Vegan', 'Drinks', etc.), or some other classification made by the menu provider." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MenuSection" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MenuSection" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/MerchantReturnEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates several kinds of product return policies." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/MerchantReturnEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MerchantReturnEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/MerchantReturnPolicy", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A MerchantReturnPolicy provides information about product return policies associated with an Organization, Product, or Offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/MerchantReturnPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MerchantReturnPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/MerchantReturnPolicySeasonalOverride", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A seasonal override of a return policy, for example used for holidays." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/MerchantReturnPolicySeasonalOverride" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MerchantReturnPolicySeasonalOverride" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/Message", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A single message from a sender to one or more organizations or people." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Message" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Message" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/MiddleSchool", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A middle school (typically for children aged around 11-14, although this varies somewhat)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MiddleSchool" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MiddleSchool" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EducationalOrganization" + } ] +}, { + "@id" : "https://schema.org/MobileApplication", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A software application designed specifically to work well on a mobile device such as a telephone." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MobileApplication" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MobileApplication" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] +}, { + "@id" : "https://schema.org/MobilePhoneStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A store that sells mobile phones and related accessories." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MobilePhoneStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MobilePhoneStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/MolecularEntity", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any constitutionally or isotopically distinct atom, molecule, ion, ion pair, radical, radical ion, complex, conformer etc., identifiable as a separately distinguishable entity." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/MolecularEntity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MolecularEntity" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] +}, { + "@id" : "https://schema.org/MonetaryAmount", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A monetary value or range. This type can be used to describe an amount of money such as $50 USD, or a range as in describing a bank account being suitable for a balance between £1,000 and £1,000,000 GBP, or the value of a salary, etc. It is recommended to use PriceSpecification Types to describe the price of an Offer, Invoice, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MonetaryAmount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MonetaryAmount" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/MonetaryAmountDistribution", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A statistical distribution of monetary amounts." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MonetaryAmountDistribution" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MonetaryAmountDistribution" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/QuantitativeValueDistribution" + } ] +}, { + "@id" : "https://schema.org/MonetaryGrant", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A monetary grant." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/MonetaryGrant" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MonetaryGrant" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Grant" + } ] +}, { + "@id" : "https://schema.org/MoneyTransfer", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of transferring money from one place to another place. This may occur electronically or physically." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/MoneyTransfer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MoneyTransfer" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TransferAction" + } ] +}, { + "@id" : "https://schema.org/MortgageLoan", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A loan in which property or real estate is used as collateral. (A loan securitized against some real estate.)" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/MortgageLoan" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MortgageLoan" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LoanOrCredit" + } ] +}, { + "@id" : "https://schema.org/Mosque", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A mosque." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Mosque" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Mosque" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PlaceOfWorship" + } ] +}, { + "@id" : "https://schema.org/Motel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A motel.\n

\nSee also the dedicated document on the use of schema.org for marking up hotels and other forms of accommodations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Motel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Motel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LodgingBusiness" + } ] +}, { + "@id" : "https://schema.org/Motorcycle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A motorcycle or motorbike is a single-track, two-wheeled motor vehicle." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/Motorcycle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Motorcycle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Vehicle" + } ] +}, { + "@id" : "https://schema.org/MotorcycleDealer", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A motorcycle dealer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MotorcycleDealer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MotorcycleDealer" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AutomotiveBusiness" + } ] +}, { + "@id" : "https://schema.org/MotorcycleRepair", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A motorcycle repair shop." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MotorcycleRepair" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MotorcycleRepair" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AutomotiveBusiness" + } ] +}, { + "@id" : "https://schema.org/MotorizedBicycle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A motorized bicycle is a bicycle with an attached motor used to power the vehicle, or to assist with pedaling." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/MotorizedBicycle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MotorizedBicycle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Vehicle" + } ] +}, { + "@id" : "https://schema.org/Mountain", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A mountain, like Mount Whitney or Mount Everest." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Mountain" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Mountain" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Landform" + } ] +}, { + "@id" : "https://schema.org/MoveAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of an agent relocating to a place.

\n\nRelated actions:

\n\n
    \n
  • TransferAction: Unlike TransferAction, the subject of the move is a living Person or Organization rather than an inanimate object.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MoveAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MoveAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/Movie", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A movie." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Movie" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Movie" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/MovieClip", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A short segment/part of a movie." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MovieClip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MovieClip" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Clip" + } ] +}, { + "@id" : "https://schema.org/MovieRentalStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A movie rental store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MovieRentalStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MovieRentalStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/MovieSeries", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A series of movies. Included movies can be indicated with the hasPart property." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MovieSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MovieSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWorkSeries" + } ] +}, { + "@id" : "https://schema.org/MovieTheater", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A movie theater." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MovieTheater" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MovieTheater" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + }, { + "@id" : "https://schema.org/EntertainmentBusiness" + } ] +}, { + "@id" : "https://schema.org/MovingCompany", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A moving company." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MovingCompany" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MovingCompany" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HomeAndConstructionBusiness" + } ] +}, { + "@id" : "https://schema.org/Muscle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A muscle is an anatomical structure consisting of a contractile form of tissue that animals use to effect movement." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/Muscle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Muscle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + } ] +}, { + "@id" : "https://schema.org/Museum", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A museum." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Museum" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Museum" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/MusicAlbum", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A collection of music tracks." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MusicAlbum" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MusicAlbum" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MusicPlaylist" + } ] +}, { + "@id" : "https://schema.org/MusicAlbumProductionType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Classification of the album by its type of content: soundtrack, live album, studio album, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MusicAlbumProductionType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MusicAlbumProductionType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/MusicAlbumReleaseType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The kind of release which this album is: single, EP or album." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MusicAlbumReleaseType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MusicAlbumReleaseType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/MusicComposition", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A musical composition." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MusicComposition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MusicComposition" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/MusicEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: Music event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MusicEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MusicEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/MusicGroup", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A musical group, such as a band, an orchestra, or a choir. Can also be a solo musician." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MusicGroup" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MusicGroup" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PerformingGroup" + } ] +}, { + "@id" : "https://schema.org/MusicPlaylist", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A collection of music tracks in playlist form." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MusicPlaylist" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MusicPlaylist" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/MusicRecording", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A music recording (track), usually a single song." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MusicRecording" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MusicRecording" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/MusicRelease", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A MusicRelease is a specific release of a music album." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MusicRelease" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MusicRelease" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MusicPlaylist" + } ] +}, { + "@id" : "https://schema.org/MusicReleaseFormatType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Format of this release (the type of recording media used, i.e. compact disc, digital media, LP, etc.)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MusicReleaseFormatType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MusicReleaseFormatType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/MusicStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A music store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MusicStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MusicStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/MusicVenue", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A music venue." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MusicVenue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MusicVenue" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/MusicVideoObject", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A music video file." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/MusicVideoObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "MusicVideoObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MediaObject" + } ] +}, { + "@id" : "https://schema.org/NGO", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Organization: Non-governmental Organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/NGO" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "NGO" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/NLNonprofitType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "NLNonprofitType: Non-profit organization type originating from the Netherlands." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/NLNonprofitType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "NLNonprofitType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/NonprofitType" + } ] +}, { + "@id" : "https://schema.org/NailSalon", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A nail salon." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/NailSalon" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "NailSalon" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HealthAndBeautyBusiness" + } ] +}, { + "@id" : "https://schema.org/Nerve", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A common pathway for the electrochemical nerve impulses that are transmitted along each of the axons." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/Nerve" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Nerve" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + } ] +}, { + "@id" : "https://schema.org/NewsArticle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A NewsArticle is an article whose content reports news, or provides background context and supporting materials for understanding the news.

\n\nA more detailed overview of schema.org News markup is also available." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/NewsArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "NewsArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Article" + } ] +}, { + "@id" : "https://schema.org/NewsMediaOrganization", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A News/Media organization such as a newspaper or TV station." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/NewsMediaOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "NewsMediaOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/Newspaper", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A publication containing information about varied topics that are pertinent to general information, a geographic area, or a specific subject matter (i.e. business, culture, education). Often published daily." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/Newspaper" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Newspaper" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Periodical" + } ] +}, { + "@id" : "https://schema.org/NightClub", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A nightclub or discotheque." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/NightClub" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "NightClub" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EntertainmentBusiness" + } ] +}, { + "@id" : "https://schema.org/NonprofitType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "NonprofitType enumerates several kinds of official non-profit types of which a non-profit organization can be." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/NonprofitType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "NonprofitType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/Notary", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A notary." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Notary" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Notary" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LegalService" + } ] +}, { + "@id" : "https://schema.org/NoteDigitalDocument", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A file containing a note, primarily for the author." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/NoteDigitalDocument" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "NoteDigitalDocument" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DigitalDocument" + } ] +}, { + "@id" : "https://schema.org/Number", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Data type: Number.

\n\nUsage guidelines:

\n\n
    \n
  • Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
  • \n
  • Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Number" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Number" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DataType" + } ] +}, { + "@id" : "https://schema.org/NutritionInformation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Nutritional information about the recipe." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/NutritionInformation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "NutritionInformation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/Observation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Instances of the class Observation are used to specify observations about an entity at a particular time. The principal properties of an Observation are observationAbout, measuredProperty, statType, [[value] and observationDate and measuredProperty. Some but not all Observations represent a QuantitativeValue. Quantitative observations can be about a StatisticalVariable, which is an abstract specification about which we can make observations that are grounded at a particular location and time.

\n\nObservations can also encode a subset of simple RDF-like statements (its observationAbout, a StatisticalVariable, defining the measuredPoperty; its observationAbout property indicating the entity the statement is about, and value )

\n\nIn the context of a quantitative knowledge graph, typical properties could include measuredProperty, observationAbout, observationDate, value, unitCode, unitText, measurementMethod." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Observation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Observation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + }, { + "@id" : "https://schema.org/QuantitativeValue" + } ] +}, { + "@id" : "https://schema.org/Occupation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A profession, may involve prolonged training and/or a formal qualification." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Occupation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Occupation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/OccupationalExperienceRequirements", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates employment-related experience requirements, e.g. monthsOfExperience." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/OccupationalExperienceRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OccupationalExperienceRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/OccupationalTherapy", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A treatment of people with physical, emotional, or social problems, using purposeful activity to help them overcome or learn to deal with their problems." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/OccupationalTherapy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OccupationalTherapy" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalTherapy" + } ] +}, { + "@id" : "https://schema.org/OceanBodyOfWater", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An ocean (for example, the Pacific)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/OceanBodyOfWater" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OceanBodyOfWater" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BodyOfWater" + } ] +}, { + "@id" : "https://schema.org/Offer", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An offer to transfer some rights to an item or to provide a service — for example, an offer to sell tickets to an event, to rent the DVD of a movie, to stream a TV show over the internet, to repair a motorcycle, or to loan a book.

\n\nNote: As the businessFunction property, which identifies the form of offer (e.g. sell, lease, repair, dispose), defaults to http://purl.org/goodrelations/v1#Sell; an Offer without a defined businessFunction value can be assumed to be an offer to sell.

\n\nFor GTIN-related fields, see Check Digit calculator and validation guide from GS1." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Offer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Offer" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/OfferCatalog", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An OfferCatalog is an ItemList that contains related Offers and/or further OfferCatalogs that are offeredBy the same provider." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/OfferCatalog" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OfferCatalog" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ItemList" + } ] +}, { + "@id" : "https://schema.org/OfferForLease", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An OfferForLease in Schema.org represents an Offer to lease out something, i.e. an Offer whose\n businessFunction is lease out. See Good Relations for\n background on the underlying concepts." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/OfferForLease" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OfferForLease" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Offer" + } ] +}, { + "@id" : "https://schema.org/OfferForPurchase", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An OfferForPurchase in Schema.org represents an Offer to sell something, i.e. an Offer whose\n businessFunction is sell. See Good Relations for\n background on the underlying concepts." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/OfferForPurchase" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OfferForPurchase" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Offer" + } ] +}, { + "@id" : "https://schema.org/OfferItemCondition", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A list of possible conditions for the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/OfferItemCondition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OfferItemCondition" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/OfferShippingDetails", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "OfferShippingDetails represents information about shipping destinations.

\n\nMultiple of these entities can be used to represent different shipping rates for different destinations:

\n\nOne entity for Alaska/Hawaii. A different one for continental US. A different one for all France.

\n\nMultiple of these entities can be used to represent different shipping costs and delivery times.

\n\nTwo entities that are identical but differ in rate and time:

\n\nE.g. Cheaper and slower: $5 in 5-7 days\nor Fast and expensive: $15 in 1-2 days." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/OfferShippingDetails" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OfferShippingDetails" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/OfficeEquipmentStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An office equipment store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/OfficeEquipmentStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OfficeEquipmentStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/OnDemandEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A publication event, e.g. catch-up TV or radio podcast, during which a program is available on-demand." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/OnDemandEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OnDemandEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PublicationEvent" + } ] +}, { + "@id" : "https://schema.org/OnlineBusiness", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A particular online business, either standalone or the online part of a broader organization. Examples include an eCommerce site, an online travel booking site, an online learning site, an online logistics and shipping provider, an online (virtual) doctor, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/OnlineBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OnlineBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/OnlineStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An eCommerce site." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/OnlineStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OnlineStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/OnlineBusiness" + } ] +}, { + "@id" : "https://schema.org/OpeningHoursSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A structured value providing information about the opening hours of a place or a certain service inside a place.

\n\nThe place is open if the opens property is specified, and closed otherwise.

\n\nIf the value for the closes property is less than the value for the opens property then the hour range is assumed to span over the next day." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/OpeningHoursSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OpeningHoursSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/OpinionNewsArticle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An OpinionNewsArticle is a NewsArticle that primarily expresses opinions rather than journalistic reporting of news and events. For example, a NewsArticle consisting of a column or Blog/BlogPosting entry in the Opinions section of a news publication." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/OpinionNewsArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OpinionNewsArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/NewsArticle" + } ] +}, { + "@id" : "https://schema.org/Optician", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A store that sells reading glasses and similar devices for improving vision." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/Optician" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Optician" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalBusiness" + } ] +}, { + "@id" : "https://schema.org/Order", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An order is a confirmation of a transaction (a receipt), which can contain multiple line items, each represented by an Offer that has been accepted by the customer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Order" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Order" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/OrderAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An agent orders an object/product/service to be delivered/sent." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/OrderAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OrderAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TradeAction" + } ] +}, { + "@id" : "https://schema.org/OrderItem", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An order item is a line of an order. It includes the quantity and shipping details of a bought offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/OrderItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OrderItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/OrderStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerated status values for Order." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/OrderStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OrderStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StatusEnumeration" + } ] +}, { + "@id" : "https://schema.org/Organization", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An organization such as a school, NGO, corporation, club, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Organization" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Organization" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Thing" + } ] +}, { + "@id" : "https://schema.org/OrganizationRole", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A subclass of Role used to describe roles within organizations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/OrganizationRole" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OrganizationRole" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Role" + } ] +}, { + "@id" : "https://schema.org/OrganizeAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of manipulating/administering/supervising/controlling one or more objects." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/OrganizeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OrganizeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/OutletStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An outlet store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/OutletStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OutletStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/OwnershipInfo", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A structured value providing information about when a certain organization or person owned a certain product." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/OwnershipInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "OwnershipInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/PaintAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of producing a painting, typically with paint and canvas as instruments." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PaintAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PaintAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreateAction" + } ] +}, { + "@id" : "https://schema.org/Painting", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A painting." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Painting" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Painting" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/PalliativeProcedure", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical procedure intended primarily for palliative purposes, aimed at relieving the symptoms of an underlying health condition." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/PalliativeProcedure" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PalliativeProcedure" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalProcedure" + }, { + "@id" : "https://schema.org/MedicalTherapy" + } ] +}, { + "@id" : "https://schema.org/ParcelDelivery", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The delivery of a parcel either via the postal service or a commercial service." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ParcelDelivery" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ParcelDelivery" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/ParentAudience", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A set of characteristics describing parents, who can be interested in viewing some content." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ParentAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ParentAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PeopleAudience" + } ] +}, { + "@id" : "https://schema.org/Park", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A park." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Park" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Park" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/ParkingFacility", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A parking lot or other parking facility." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ParkingFacility" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ParkingFacility" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/PathologyTest", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical test performed by a laboratory that typically involves examination of a tissue sample by a pathologist." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/PathologyTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PathologyTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalTest" + } ] +}, { + "@id" : "https://schema.org/Patient", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A patient is any person recipient of health care services." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/Patient" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Patient" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalAudience" + }, { + "@id" : "https://schema.org/Person" + } ] +}, { + "@id" : "https://schema.org/PawnShop", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A shop that will buy, or lend money against the security of, personal possessions." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PawnShop" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PawnShop" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/PayAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An agent pays a price to a participant." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PayAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PayAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TradeAction" + } ] +}, { + "@id" : "https://schema.org/PaymentCard", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A payment method using a credit, debit, store or other card to associate the payment with an account." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PaymentCard" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PaymentCard" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FinancialProduct" + }, { + "@id" : "https://schema.org/PaymentMethod" + } ] +}, { + "@id" : "https://schema.org/PaymentChargeSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The costs of settling the payment using a particular payment method." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PaymentChargeSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PaymentChargeSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PriceSpecification" + } ] +}, { + "@id" : "https://schema.org/PaymentMethod", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A payment method is a standardized procedure for transferring the monetary amount for a purchase. Payment methods are characterized by the legal and technical structures used, and by the organization or group carrying out the transaction.

\n\nCommonly used values:

\n\n
    \n
  • http://purl.org/goodrelations/v1#ByBankTransferInAdvance
  • \n
  • http://purl.org/goodrelations/v1#ByInvoice
  • \n
  • http://purl.org/goodrelations/v1#Cash
  • \n
  • http://purl.org/goodrelations/v1#CheckInAdvance
  • \n
  • http://purl.org/goodrelations/v1#COD
  • \n
  • http://purl.org/goodrelations/v1#DirectDebit
  • \n
  • http://purl.org/goodrelations/v1#GoogleCheckout
  • \n
  • http://purl.org/goodrelations/v1#PayPal
  • \n
  • http://purl.org/goodrelations/v1#PaySwarm
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PaymentMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PaymentMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/PaymentService", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Service to transfer funds from a person or organization to a beneficiary person or organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PaymentService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PaymentService" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FinancialProduct" + } ] +}, { + "@id" : "https://schema.org/PaymentStatusType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A specific payment status. For example, PaymentDue, PaymentComplete, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PaymentStatusType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PaymentStatusType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StatusEnumeration" + } ] +}, { + "@id" : "https://schema.org/PeopleAudience", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A set of characteristics belonging to people, e.g. who compose an item's target audience." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PeopleAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PeopleAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Audience" + } ] +}, { + "@id" : "https://schema.org/PerformAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of participating in performance arts." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PerformAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PerformAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PlayAction" + } ] +}, { + "@id" : "https://schema.org/PerformanceRole", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A PerformanceRole is a Role that some entity places with regard to a theatrical performance, e.g. in a Movie, TVSeries etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PerformanceRole" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PerformanceRole" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Role" + } ] +}, { + "@id" : "https://schema.org/PerformingArtsTheater", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A theater or other performing art center." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PerformingArtsTheater" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PerformingArtsTheater" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/PerformingGroup", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A performance group, such as a band, an orchestra, or a circus." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PerformingGroup" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PerformingGroup" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/Periodical", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A publication in any medium issued in successive parts bearing numerical or chronological designations and intended to continue indefinitely, such as a magazine, scholarly journal, or newspaper.

\n\nSee also blog post." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Periodical" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Periodical" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWorkSeries" + } ] +}, { + "@id" : "https://schema.org/Permit", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A permit issued by an organization, e.g. a parking pass." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Permit" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Permit" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/Person", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A person (alive, dead, undead, or fictional)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Person" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Person" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Thing" + } ] +}, { + "@id" : "https://schema.org/PetStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A pet store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PetStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PetStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/Pharmacy", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A pharmacy or drugstore." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Pharmacy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Pharmacy" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalBusiness" + }, { + "@id" : "https://schema.org/MedicalOrganization" + } ] +}, { + "@id" : "https://schema.org/Photograph", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A photograph." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Photograph" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Photograph" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/PhotographAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of capturing still images of objects using a camera." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PhotographAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PhotographAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreateAction" + } ] +}, { + "@id" : "https://schema.org/PhysicalActivity", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any bodily activity that enhances or maintains physical fitness and overall health and wellness. Includes activity that is part of daily living and routine, structured exercise, and exercise prescribed as part of a medical treatment or recovery plan." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/PhysicalActivity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PhysicalActivity" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LifestyleModification" + } ] +}, { + "@id" : "https://schema.org/PhysicalActivityCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Categories of physical activity, organized by physiologic classification." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/PhysicalActivityCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PhysicalActivityCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/PhysicalExam", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A type of physical examination of a patient performed by a physician." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/PhysicalExam" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PhysicalExam" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEnumeration" + }, { + "@id" : "https://schema.org/MedicalProcedure" + } ] +}, { + "@id" : "https://schema.org/PhysicalTherapy", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A process of progressive physical care and rehabilitation aimed at improving a health condition." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/PhysicalTherapy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PhysicalTherapy" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalTherapy" + } ] +}, { + "@id" : "https://schema.org/Physician", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An individual physician or a physician's office considered as a MedicalOrganization." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Physician" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Physician" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalBusiness" + }, { + "@id" : "https://schema.org/MedicalOrganization" + } ] +}, { + "@id" : "https://schema.org/PhysiciansOffice", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A doctor's office or clinic." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PhysiciansOffice" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PhysiciansOffice" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Physician" + } ] +}, { + "@id" : "https://schema.org/Place", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Entities that have a somewhat fixed, physical extension." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Place" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Place" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Thing" + } ] +}, { + "@id" : "https://schema.org/PlaceOfWorship", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Place of worship, such as a church, synagogue, or mosque." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PlaceOfWorship" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PlaceOfWorship" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/PlanAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of planning the execution of an event/task/action/reservation/plan to a future date." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PlanAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PlanAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/OrganizeAction" + } ] +}, { + "@id" : "https://schema.org/Play", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A play is a form of literature, usually consisting of dialogue between characters, intended for theatrical performance rather than just reading. Note: A performance of a Play would be a TheaterEvent or BroadcastEvent - the Play being the workPerformed." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Play" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Play" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/PlayAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of playing/exercising/training/performing for enjoyment, leisure, recreation, competition or exercise.

\n\nRelated actions:

\n\n
    \n
  • ListenAction: Unlike ListenAction (which is under ConsumeAction), PlayAction refers to performing for an audience or at an event, rather than consuming music.
  • \n
  • WatchAction: Unlike WatchAction (which is under ConsumeAction), PlayAction refers to showing/displaying for an audience or at an event, rather than consuming visual content.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PlayAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PlayAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/PlayGameAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of playing a video game." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/PlayGameAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PlayGameAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ConsumeAction" + } ] +}, { + "@id" : "https://schema.org/Playground", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A playground." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Playground" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Playground" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/Plumber", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A plumbing service." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Plumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Plumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HomeAndConstructionBusiness" + } ] +}, { + "@id" : "https://schema.org/PodcastEpisode", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A single episode of a podcast series." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/PodcastEpisode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PodcastEpisode" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Episode" + } ] +}, { + "@id" : "https://schema.org/PodcastSeason", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A single season of a podcast. Many podcasts do not break down into separate seasons. In that case, PodcastSeries should be used." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/PodcastSeason" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PodcastSeason" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + } ] +}, { + "@id" : "https://schema.org/PodcastSeries", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A podcast is an episodic series of digital audio or video files which a user can download and listen to." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/PodcastSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PodcastSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWorkSeries" + } ] +}, { + "@id" : "https://schema.org/PoliceStation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A police station." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PoliceStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PoliceStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + }, { + "@id" : "https://schema.org/EmergencyService" + } ] +}, { + "@id" : "https://schema.org/PoliticalParty", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Organization: Political Party." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PoliticalParty" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PoliticalParty" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/Pond", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A pond." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Pond" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Pond" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BodyOfWater" + } ] +}, { + "@id" : "https://schema.org/PostOffice", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A post office." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PostOffice" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PostOffice" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/GovernmentOffice" + } ] +}, { + "@id" : "https://schema.org/PostalAddress", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The mailing address." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PostalAddress" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PostalAddress" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ContactPoint" + } ] +}, { + "@id" : "https://schema.org/PostalCodeRangeSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a range of postal codes, usually defined as the set of valid codes between postalCodeBegin and postalCodeEnd, inclusively." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/PostalCodeRangeSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PostalCodeRangeSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/Poster", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A large, usually printed placard, bill, or announcement, often illustrated, that is posted to advertise or publicize something." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Poster" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Poster" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/PreOrderAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An agent orders a (not yet released) object/product/service to be delivered/sent." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PreOrderAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PreOrderAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TradeAction" + } ] +}, { + "@id" : "https://schema.org/PrependAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of inserting at the beginning if an ordered collection." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PrependAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PrependAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InsertAction" + } ] +}, { + "@id" : "https://schema.org/Preschool", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A preschool." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Preschool" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Preschool" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EducationalOrganization" + } ] +}, { + "@id" : "https://schema.org/PresentationDigitalDocument", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A file containing slides or used for a presentation." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PresentationDigitalDocument" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PresentationDigitalDocument" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DigitalDocument" + } ] +}, { + "@id" : "https://schema.org/PreventionIndication", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An indication for preventing an underlying condition, symptom, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/PreventionIndication" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PreventionIndication" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalIndication" + } ] +}, { + "@id" : "https://schema.org/PriceComponentTypeEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates different price components that together make up the total price for an offered product." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/PriceComponentTypeEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PriceComponentTypeEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/PriceSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A structured value representing a price or price range. Typically, only the subclasses of this type are used for markup. It is recommended to use MonetaryAmount to describe independent amounts of money such as a salary, credit card limits, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PriceSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PriceSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/PriceTypeEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates different price types, for example list price, invoice price, and sale price." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/PriceTypeEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PriceTypeEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/Product", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any offered product or service. For example: a pair of shoes; a concert ticket; the rental of a car; a haircut; or an episode of a TV show streamed online." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Product" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Product" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Thing" + } ] +}, { + "@id" : "https://schema.org/ProductCollection", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A set of products (either ProductGroups or specific variants) that are listed together e.g. in an Offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ProductCollection" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ProductCollection" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Collection" + }, { + "@id" : "https://schema.org/Product" + } ] +}, { + "@id" : "https://schema.org/ProductGroup", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A ProductGroup represents a group of Products that vary only in certain well-described ways, such as by size, color, material etc.

\n\nWhile a ProductGroup itself is not directly offered for sale, the various varying products that it represents can be. The ProductGroup serves as a prototype or template, standing in for all of the products who have an isVariantOf relationship to it. As such, properties (including additional types) can be applied to the ProductGroup to represent characteristics shared by each of the (possibly very many) variants. Properties that reference a ProductGroup are not included in this mechanism; neither are the following specific properties variesBy, hasVariant, url." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ProductGroup" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ProductGroup" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Product" + } ] +}, { + "@id" : "https://schema.org/ProductModel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A datasheet or vendor specification of a product (in the sense of a prototypical description)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ProductModel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ProductModel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Product" + } ] +}, { + "@id" : "https://schema.org/ProductReturnEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "ProductReturnEnumeration enumerates several kinds of product return policy. Note that this structure may not capture all aspects of the policy." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://attic.schema.org/ProductReturnEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ProductReturnEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/ProductReturnPolicy", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A ProductReturnPolicy provides information about product return policies associated with an Organization or Product." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://attic.schema.org/ProductReturnPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ProductReturnPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/ProfessionalService", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Original definition: \"provider of professional services.\"

\n\nThe general ProfessionalService type for local businesses was deprecated due to confusion with Service. For reference, the types that it included were: Dentist,\n AccountingService, Attorney, Notary, as well as types for several kinds of HomeAndConstructionBusiness: Electrician, GeneralContractor,\n HousePainter, Locksmith, Plumber, RoofingContractor. LegalService was introduced as a more inclusive supertype of Attorney." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ProfessionalService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ProfessionalService" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/ProfilePage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Web page type: Profile page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ProfilePage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ProfilePage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPage" + } ] +}, { + "@id" : "https://schema.org/ProgramMembership", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Used to describe membership in a loyalty programs (e.g. \"StarAliance\"), traveler clubs (e.g. \"AAA\"), purchase clubs (\"Safeway Club\"), etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ProgramMembership" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ProgramMembership" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/Project", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An enterprise (potentially individual but typically collaborative), planned to achieve a particular aim.\nUse properties from Organization, subOrganization/parentOrganization to indicate project sub-structures." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Project" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Project" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/PronounceableText", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Data type: PronounceableText." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/PronounceableText" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PronounceableText" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Text" + } ] +}, { + "@id" : "https://schema.org/Property", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A property, used to indicate attributes and relationships of some Thing; equivalent to rdf:Property." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://meta.schema.org/Property" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Property" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/PropertyValue", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A property-value pair, e.g. representing a feature of a product or place. Use the 'name' property for the name of the property. If there is an additional human-readable version of the value, put that into the 'description' property.

\n\nAlways use specific schema.org properties when a) they exist and b) you can populate them. Using PropertyValue as a substitute will typically not trigger the same effect as using the original, specific property." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PropertyValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PropertyValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/PropertyValueSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Property value specification." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PropertyValueSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PropertyValueSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/Protein", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Protein is here used in its widest possible definition, as classes of amino acid based molecules. Amyloid-beta Protein in human (UniProt P05067), eukaryota (e.g. an OrthoDB group) or even a single molecule that one can point to are all of type :Protein. A protein can thus be a subclass of another protein, e.g. :Protein as a UniProt record can have multiple isoforms inside it which would also be :Protein. They can be imagined, synthetic, hypothetical or naturally occurring." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Protein" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Protein" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BioChemEntity" + } ] +}, { + "@id" : "https://schema.org/PsychologicalTreatment", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A process of care relying upon counseling, dialogue and communication aimed at improving a mental health condition without use of drugs." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/PsychologicalTreatment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PsychologicalTreatment" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TherapeuticProcedure" + } ] +}, { + "@id" : "https://schema.org/PublicSwimmingPool", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A public swimming pool." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PublicSwimmingPool" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PublicSwimmingPool" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/SportsActivityLocation" + } ] +}, { + "@id" : "https://schema.org/PublicToilet", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A public toilet is a room or small building containing one or more toilets (and possibly also urinals) which is available for use by the general public, or by customers or employees of certain businesses." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/PublicToilet" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PublicToilet" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/PublicationEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A PublicationEvent corresponds indifferently to the event of publication for a CreativeWork of any type, e.g. a broadcast event, an on-demand event, a book/journal publication via a variety of delivery media." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PublicationEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PublicationEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/PublicationIssue", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A part of a successively published publication such as a periodical or publication volume, often numbered, usually containing a grouping of works such as articles.

\n\nSee also blog post." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PublicationIssue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PublicationIssue" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/PublicationVolume", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A part of a successively published publication such as a periodical or multi-volume work, often numbered. It may represent a time span, such as a year.

\n\nSee also blog post." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/PublicationVolume" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "PublicationVolume" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/QAPage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A QAPage is a WebPage focussed on a specific Question and its Answer(s), e.g. in a question answering site or documenting Frequently Asked Questions (FAQs)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/QAPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "QAPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPage" + } ] +}, { + "@id" : "https://schema.org/QualitativeValue", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A predefined value for a product characteristic, e.g. the power cord plug type 'US' or the garment sizes 'S', 'M', 'L', and 'XL'." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/QualitativeValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "QualitativeValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/QuantitativeValue", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A point value or interval for product characteristics and other purposes." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/QuantitativeValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "QuantitativeValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/QuantitativeValueDistribution", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A statistical distribution of values." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/QuantitativeValueDistribution" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "QuantitativeValueDistribution" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/Quantity", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Quantities such as distance, time, mass, weight, etc. Particular instances of say Mass are entities like '3 kg' or '4 milligrams'." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Quantity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Quantity" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/Question", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A specific question - e.g. from a user seeking answers online, or collected in a Frequently Asked Questions (FAQ) document." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Question" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Question" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Comment" + } ] +}, { + "@id" : "https://schema.org/Quiz", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Quiz: A test of knowledge, skills and abilities." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Quiz" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Quiz" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LearningResource" + } ] +}, { + "@id" : "https://schema.org/Quotation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A quotation. Often but not necessarily from some written work, attributable to a real world author and - if associated with a fictional character - to any fictional Person. Use isBasedOn to link to source/origin. The recordedIn property can be used to reference a Quotation from an Event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Quotation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Quotation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/QuoteAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An agent quotes/estimates/appraises an object/product/service with a price at a location/store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/QuoteAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "QuoteAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TradeAction" + } ] +}, { + "@id" : "https://schema.org/RVPark", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A place offering space for \"Recreational Vehicles\", Caravans, mobile homes and the like." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RVPark" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RVPark" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/RadiationTherapy", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A process of care using radiation aimed at improving a health condition." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/RadiationTherapy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RadiationTherapy" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalTherapy" + } ] +}, { + "@id" : "https://schema.org/RadioBroadcastService", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A delivery service through which radio content is provided via broadcast over the air or online." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/RadioBroadcastService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RadioBroadcastService" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BroadcastService" + } ] +}, { + "@id" : "https://schema.org/RadioChannel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A unique instance of a radio BroadcastService on a CableOrSatelliteService lineup." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RadioChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RadioChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BroadcastChannel" + } ] +}, { + "@id" : "https://schema.org/RadioClip", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A short radio program or a segment/part of a radio program." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RadioClip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RadioClip" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Clip" + } ] +}, { + "@id" : "https://schema.org/RadioEpisode", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A radio episode which can be part of a series or season." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RadioEpisode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RadioEpisode" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Episode" + } ] +}, { + "@id" : "https://schema.org/RadioSeason", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Season dedicated to radio broadcast and associated online delivery." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RadioSeason" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RadioSeason" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWorkSeason" + } ] +}, { + "@id" : "https://schema.org/RadioSeries", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "CreativeWorkSeries dedicated to radio broadcast and associated online delivery." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RadioSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RadioSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWorkSeries" + } ] +}, { + "@id" : "https://schema.org/RadioStation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A radio station." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RadioStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RadioStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/Rating", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A rating is an evaluation on a numeric scale, such as 1 to 5 stars." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Rating" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Rating" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/ReactAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of responding instinctively and emotionally to an object, expressing a sentiment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ReactAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReactAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AssessAction" + } ] +}, { + "@id" : "https://schema.org/ReadAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of consuming written content." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ReadAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReadAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ConsumeAction" + } ] +}, { + "@id" : "https://schema.org/RealEstateAgent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A real-estate agent." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RealEstateAgent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RealEstateAgent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/RealEstateListing", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A RealEstateListing is a listing that describes one or more real-estate Offers (whose businessFunction is typically to lease out, or to sell).\n The RealEstateListing type itself represents the overall listing, as manifested in some WebPage." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/RealEstateListing" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RealEstateListing" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPage" + } ] +}, { + "@id" : "https://schema.org/ReceiveAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of physically/electronically taking delivery of an object that has been transferred from an origin to a destination. Reciprocal of SendAction.

\n\nRelated actions:

\n\n
    \n
  • SendAction: The reciprocal of ReceiveAction.
  • \n
  • TakeAction: Unlike TakeAction, ReceiveAction does not imply that the ownership has been transferred (e.g. I can receive a package, but it does not mean the package is now mine).
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ReceiveAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReceiveAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TransferAction" + } ] +}, { + "@id" : "https://schema.org/Recipe", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A recipe. For dietary restrictions covered by the recipe, a few common restrictions are enumerated via suitableForDiet. The keywords property can also be used to add more detail." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Recipe" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Recipe" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HowTo" + } ] +}, { + "@id" : "https://schema.org/Recommendation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Recommendation is a type of Review that suggests or proposes something as the best option or best course of action. Recommendations may be for products or services, or other concrete things, as in the case of a ranked list or product guide. A Guide may list multiple recommendations for different categories. For example, in a Guide about which TVs to buy, the author may have several Recommendations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Recommendation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Recommendation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Review" + } ] +}, { + "@id" : "https://schema.org/RecommendedDoseSchedule", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A recommended dosing schedule for a drug or supplement as prescribed or recommended by an authority or by the drug/supplement's manufacturer. Capture the recommending authority in the recognizingAuthority property of MedicalEntity." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/RecommendedDoseSchedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RecommendedDoseSchedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DoseSchedule" + } ] +}, { + "@id" : "https://schema.org/RecyclingCenter", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A recycling center." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RecyclingCenter" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RecyclingCenter" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/RefundTypeEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates several kinds of product return refund types." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/RefundTypeEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RefundTypeEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/RegisterAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of registering to be a user of a service, product or web page.

\n\nRelated actions:

\n\n
    \n
  • JoinAction: Unlike JoinAction, RegisterAction implies you are registering to be a user of a service, not a group/team of people.
  • \n
  • FollowAction: Unlike FollowAction, RegisterAction doesn't imply that the agent is expecting to poll for updates from the object.
  • \n
  • SubscribeAction: Unlike SubscribeAction, RegisterAction doesn't imply that the agent is expecting updates from the object.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RegisterAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RegisterAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InteractAction" + } ] +}, { + "@id" : "https://schema.org/RejectAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of rejecting to/adopting an object.

\n\nRelated actions:

\n\n\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RejectAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RejectAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AllocateAction" + } ] +}, { + "@id" : "https://schema.org/RentAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of giving money in return for temporary use, but not ownership, of an object such as a vehicle or property. For example, an agent rents a property from a landlord in exchange for a periodic payment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RentAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RentAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TradeAction" + } ] +}, { + "@id" : "https://schema.org/RentalCarReservation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A reservation for a rental car.

\n\nNote: This type is for information about actual reservations, e.g. in confirmation emails or HTML pages with individual confirmations of reservations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RentalCarReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RentalCarReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Reservation" + } ] +}, { + "@id" : "https://schema.org/RepaymentSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A structured value representing repayment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/RepaymentSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RepaymentSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/ReplaceAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of editing a recipient by replacing an old object with a new object." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ReplaceAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReplaceAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/UpdateAction" + } ] +}, { + "@id" : "https://schema.org/ReplyAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of responding to a question/message asked/sent by the object. Related to AskAction.

\n\nRelated actions:

\n\n
    \n
  • AskAction: Appears generally as an origin of a ReplyAction.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ReplyAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReplyAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CommunicateAction" + } ] +}, { + "@id" : "https://schema.org/Report", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Report generated by governmental or non-governmental organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Report" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Report" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Article" + } ] +}, { + "@id" : "https://schema.org/ReportageNewsArticle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The ReportageNewsArticle type is a subtype of NewsArticle representing\n news articles which are the result of journalistic news reporting conventions.

\n\nIn practice many news publishers produce a wide variety of article types, many of which might be considered a NewsArticle but not a ReportageNewsArticle. For example, opinion pieces, reviews, analysis, sponsored or satirical articles, or articles that combine several of these elements.

\n\nThe ReportageNewsArticle type is based on a stricter ideal for \"news\" as a work of journalism, with articles based on factual information either observed or verified by the author, or reported and verified from knowledgeable sources. This often includes perspectives from multiple viewpoints on a particular issue (distinguishing news reports from public relations or propaganda). News reports in the ReportageNewsArticle sense de-emphasize the opinion of the author, with commentary and value judgements typically expressed elsewhere.

\n\nA ReportageNewsArticle which goes deeper into analysis can also be marked with an additional type of AnalysisNewsArticle." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ReportageNewsArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReportageNewsArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/NewsArticle" + } ] +}, { + "@id" : "https://schema.org/ReportedDoseSchedule", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A patient-reported or observed dosing schedule for a drug or supplement." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/ReportedDoseSchedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReportedDoseSchedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DoseSchedule" + } ] +}, { + "@id" : "https://schema.org/ResearchOrganization", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Research Organization (e.g. scientific institute, research company)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ResearchOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ResearchOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/ResearchProject", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Research project." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ResearchProject" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ResearchProject" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Project" + } ] +}, { + "@id" : "https://schema.org/Researcher", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Researchers." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Researcher" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Researcher" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Audience" + } ] +}, { + "@id" : "https://schema.org/Reservation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Describes a reservation for travel, dining or an event. Some reservations require tickets.

\n\nNote: This type is for information about actual reservations, e.g. in confirmation emails or HTML pages with individual confirmations of reservations. For offers of tickets, restaurant reservations, flights, or rental cars, use Offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Reservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Reservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/ReservationPackage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A group of multiple reservations with common values for all sub-reservations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ReservationPackage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReservationPackage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Reservation" + } ] +}, { + "@id" : "https://schema.org/ReservationStatusType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerated status values for Reservation." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ReservationStatusType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReservationStatusType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StatusEnumeration" + } ] +}, { + "@id" : "https://schema.org/ReserveAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Reserving a concrete object.

\n\nRelated actions:

\n\n
    \n
  • ScheduleAction: Unlike ScheduleAction, ReserveAction reserves concrete objects (e.g. a table, a hotel) towards a time slot / spatial allocation.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ReserveAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReserveAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PlanAction" + } ] +}, { + "@id" : "https://schema.org/Reservoir", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A reservoir of water, typically an artificially created lake, like the Lake Kariba reservoir." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Reservoir" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Reservoir" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BodyOfWater" + } ] +}, { + "@id" : "https://schema.org/Residence", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The place where a person lives." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Residence" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Residence" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Place" + } ] +}, { + "@id" : "https://schema.org/Resort", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A resort is a place used for relaxation or recreation, attracting visitors for holidays or vacations. Resorts are places, towns or sometimes commercial establishments operated by a single company (source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Resort).\n

\nSee also the dedicated document on the use of schema.org for marking up hotels and other forms of accommodations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Resort" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Resort" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LodgingBusiness" + } ] +}, { + "@id" : "https://schema.org/Restaurant", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A restaurant." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Restaurant" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Restaurant" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FoodEstablishment" + } ] +}, { + "@id" : "https://schema.org/RestrictedDiet", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A diet restricted to certain foods or preparations for cultural, religious, health or lifestyle reasons." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RestrictedDiet" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RestrictedDiet" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/ResumeAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of resuming a device or application which was formerly paused (e.g. resume music playback or resume a timer)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ResumeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ResumeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ControlAction" + } ] +}, { + "@id" : "https://schema.org/ReturnAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of returning to the origin that which was previously received (concrete objects) or taken (ownership)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ReturnAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReturnAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TransferAction" + } ] +}, { + "@id" : "https://schema.org/ReturnFeesEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates several kinds of policies for product return fees." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ReturnFeesEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReturnFeesEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/ReturnLabelSourceEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates several types of return labels for product returns." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ReturnLabelSourceEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReturnLabelSourceEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/ReturnMethodEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates several types of product return methods." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ReturnMethodEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReturnMethodEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/Review", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A review of an item - for example, of a restaurant, movie, or store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Review" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Review" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/ReviewAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of producing a balanced opinion about the object for an audience. An agent reviews an object with participants resulting in a review." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ReviewAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReviewAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AssessAction" + } ] +}, { + "@id" : "https://schema.org/ReviewNewsArticle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A NewsArticle and CriticReview providing a professional critic's assessment of a service, product, performance, or artistic or literary work." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ReviewNewsArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ReviewNewsArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CriticReview" + }, { + "@id" : "https://schema.org/NewsArticle" + } ] +}, { + "@id" : "https://schema.org/RiverBodyOfWater", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A river (for example, the broad majestic Shannon)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RiverBodyOfWater" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RiverBodyOfWater" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BodyOfWater" + } ] +}, { + "@id" : "https://schema.org/Role", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents additional information about a relationship or property. For example a Role can be used to say that a 'member' role linking some SportsTeam to a player occurred during a particular time period. Or that a Person's 'actor' role in a Movie was for some particular characterName. Such properties can be attached to a Role entity, which is then associated with the main entities using ordinary properties like 'member' or 'actor'.

\n\nSee also blog post." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Role" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Role" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/RoofingContractor", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A roofing contractor." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RoofingContractor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RoofingContractor" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HomeAndConstructionBusiness" + } ] +}, { + "@id" : "https://schema.org/Room", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A room is a distinguishable space within a structure, usually separated from other spaces by interior walls (source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Room).\n

\nSee also the dedicated document on the use of schema.org for marking up hotels and other forms of accommodations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Room" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Room" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Accommodation" + } ] +}, { + "@id" : "https://schema.org/RsvpAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of notifying an event organizer as to whether you expect to attend the event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RsvpAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RsvpAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InformAction" + } ] +}, { + "@id" : "https://schema.org/RsvpResponseType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "RsvpResponseType is an enumeration type whose instances represent responding to an RSVP request." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/RsvpResponseType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "RsvpResponseType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/SaleEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: Sales event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SaleEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SaleEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/SatiricalArticle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An Article whose content is primarily [satirical] in nature, i.e. unlikely to be literally true. A satirical article is sometimes but not necessarily also a NewsArticle. ScholarlyArticles are also sometimes satirized." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/SatiricalArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SatiricalArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Article" + } ] +}, { + "@id" : "https://schema.org/Schedule", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A schedule defines a repeating time period used to describe a regularly occurring Event. At a minimum a schedule will specify repeatFrequency which describes the interval between occurrences of the event. Additional information can be provided to specify the schedule more precisely.\n This includes identifying the day(s) of the week or month when the recurring event will take place, in addition to its start and end time. Schedules may also\n have start and end dates to indicate when they are active, e.g. to define a limited calendar of events." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Schedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Schedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/ScheduleAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Scheduling future actions, events, or tasks.

\n\nRelated actions:

\n\n
    \n
  • ReserveAction: Unlike ReserveAction, ScheduleAction allocates future actions (e.g. an event, a task, etc) towards a time slot / spatial allocation.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ScheduleAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ScheduleAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PlanAction" + } ] +}, { + "@id" : "https://schema.org/ScholarlyArticle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A scholarly article." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ScholarlyArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ScholarlyArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Article" + } ] +}, { + "@id" : "https://schema.org/School", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A school." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/School" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "School" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EducationalOrganization" + } ] +}, { + "@id" : "https://schema.org/SchoolDistrict", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A School District is an administrative area for the administration of schools." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/SchoolDistrict" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SchoolDistrict" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AdministrativeArea" + } ] +}, { + "@id" : "https://schema.org/ScreeningEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A screening of a movie or other video." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ScreeningEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ScreeningEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/Sculpture", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A piece of sculpture." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Sculpture" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Sculpture" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/SeaBodyOfWater", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sea (for example, the Caspian sea)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SeaBodyOfWater" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SeaBodyOfWater" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BodyOfWater" + } ] +}, { + "@id" : "https://schema.org/SearchAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of searching for an object.

\n\nRelated actions:

\n\n
    \n
  • FindAction: SearchAction generally leads to a FindAction, but not necessarily.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SearchAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SearchAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/SearchRescueOrganization", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Search and Rescue organization of some kind." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/SearchRescueOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SearchRescueOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/SearchResultsPage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Web page type: Search results page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SearchResultsPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SearchResultsPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPage" + } ] +}, { + "@id" : "https://schema.org/Season", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A media season, e.g. TV, radio, video game etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Season" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Season" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/Seat", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Used to describe a seat, such as a reserved seat in an event reservation." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Seat" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Seat" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/SeekToAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This is the Action of navigating to a specific startOffset timestamp within a VideoObject, typically represented with a URL template structure." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/SeekToAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SeekToAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/SelfStorage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A self-storage facility." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SelfStorage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SelfStorage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/SellAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of taking money from a buyer in exchange for goods or services rendered. An agent sells an object, product, or service to a buyer for a price. Reciprocal of BuyAction." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SellAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SellAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TradeAction" + } ] +}, { + "@id" : "https://schema.org/SendAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of physically/electronically dispatching an object for transfer from an origin to a destination. Related actions:

\n\n
    \n
  • ReceiveAction: The reciprocal of SendAction.
  • \n
  • GiveAction: Unlike GiveAction, SendAction does not imply the transfer of ownership (e.g. I can send you my laptop, but I'm not necessarily giving it to you).
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SendAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SendAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TransferAction" + } ] +}, { + "@id" : "https://schema.org/Series", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Series in schema.org is a group of related items, typically but not necessarily of the same kind. See also CreativeWorkSeries, EventSeries." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Series" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Series" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/Service", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A service provided by an organization, e.g. delivery service, print services, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Service" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Service" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/ServiceChannel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A means for accessing a service, e.g. a government office location, web site, or phone number." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ServiceChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ServiceChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/ShareAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of distributing content to people for their amusement or edification." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ShareAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ShareAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CommunicateAction" + } ] +}, { + "@id" : "https://schema.org/SheetMusic", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Printed music, as opposed to performed or recorded music." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/SheetMusic" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SheetMusic" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/ShippingDeliveryTime", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "ShippingDeliveryTime provides various pieces of information about delivery times for shipping." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ShippingDeliveryTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ShippingDeliveryTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/ShippingRateSettings", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A ShippingRateSettings represents re-usable pieces of shipping information. It is designed for publication on an URL that may be referenced via the shippingSettingsLink property of an OfferShippingDetails. Several occurrences can be published, distinguished and matched (i.e. identified/referenced) by their different values for shippingLabel." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ShippingRateSettings" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ShippingRateSettings" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/ShoeStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A shoe store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ShoeStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ShoeStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/ShoppingCenter", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A shopping center or mall." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ShoppingCenter" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ShoppingCenter" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/ShortStory", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Short story or tale. A brief work of literature, usually written in narrative prose." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ShortStory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ShortStory" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/SingleFamilyResidence", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Residence type: Single-family home." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SingleFamilyResidence" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SingleFamilyResidence" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/House" + } ] +}, { + "@id" : "https://schema.org/SiteNavigationElement", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A navigation element of the page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SiteNavigationElement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SiteNavigationElement" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPageElement" + } ] +}, { + "@id" : "https://schema.org/SizeGroupEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates common size groups for various product categories." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/SizeGroupEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SizeGroupEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/SizeSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Size related properties of a product, typically a size code (name) and optionally a sizeSystem, sizeGroup, and product measurements (hasMeasurement). In addition, the intended audience can be defined through suggestedAge, suggestedGender, and suggested body measurements (suggestedMeasurement)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/SizeSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SizeSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/QualitativeValue" + } ] +}, { + "@id" : "https://schema.org/SizeSystemEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates common size systems for different categories of products, for example \"EN-13402\" or \"UK\" for wearables or \"Imperial\" for screws." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/SizeSystemEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SizeSystemEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/SkiResort", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A ski resort." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SkiResort" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SkiResort" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Resort" + }, { + "@id" : "https://schema.org/SportsActivityLocation" + } ] +}, { + "@id" : "https://schema.org/SocialEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: Social event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SocialEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SocialEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/SocialMediaPosting", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A post to a social media platform, including blog posts, tweets, Facebook posts, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SocialMediaPosting" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SocialMediaPosting" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Article" + } ] +}, { + "@id" : "https://schema.org/SoftwareApplication", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A software application." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SoftwareApplication" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/SoftwareSourceCode", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Computer programming source code. Example: Full (compile ready) solutions, code snippet samples, scripts, templates." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SoftwareSourceCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SoftwareSourceCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/SolveMathAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The action that takes in a math expression and directs users to a page potentially capable of solving/simplifying that expression." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/SolveMathAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SolveMathAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/SomeProducts", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A placeholder for multiple similar products of the same kind." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SomeProducts" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SomeProducts" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Product" + } ] +}, { + "@id" : "https://schema.org/SpeakableSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A SpeakableSpecification indicates (typically via xpath or cssSelector) sections of a document that are highlighted as particularly speakable. Instances of this type are expected to be used primarily as values of the speakable property." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SpeakableSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SpeakableSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/SpecialAnnouncement", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A SpecialAnnouncement combines a simple date-stamped textual information update\n with contextualized Web links and other structured data. It represents an information update made by a\n locally-oriented organization, for example schools, pharmacies, healthcare providers, community groups, police,\n local government.

\n\nFor work in progress guidelines on Coronavirus-related markup see this doc.

\n\nThe motivating scenario for SpecialAnnouncement is the Coronavirus pandemic, and the initial vocabulary is oriented to this urgent situation. Schema.org\nexpect to improve the markup iteratively as it is deployed and as feedback emerges from use. In addition to our\nusual Github entry, feedback comments can also be provided in this document.

\n\nWhile this schema is designed to communicate urgent crisis-related information, it is not the same as an emergency warning technology like CAP, although there may be overlaps. The intent is to cover\nthe kinds of everyday practical information being posted to existing websites during an emergency situation.

\n\nSeveral kinds of information can be provided:

\n\nWe encourage the provision of \"name\", \"text\", \"datePosted\", \"expires\" (if appropriate), \"category\" and\n\"url\" as a simple baseline. It is important to provide a value for \"category\" where possible, most ideally as a well known\nURL from Wikipedia or Wikidata. In the case of the 2019-2020 Coronavirus pandemic, this should be \"https://en.wikipedia.org/w/index.php?title=2019-20_coronavirus_pandemic\" or \"https://www.wikidata.org/wiki/Q81068910\".

\n\nFor many of the possible properties, values can either be simple links or an inline description, depending on whether a summary is available. For a link, provide just the URL of the appropriate page as the property's value. For an inline description, use a WebContent type, and provide the url as a property of that, alongside at least a simple \"text\" summary of the page. It is\nunlikely that a single SpecialAnnouncement will need all of the possible properties simultaneously.

\n\nWe expect that in many cases the page referenced might contain more specialized structured data, e.g. contact info, openingHours, Event, FAQPage etc. By linking to those pages from a SpecialAnnouncement you can help make it clearer that the events are related to the situation (e.g. Coronavirus) indicated by the category property of the SpecialAnnouncement.

\n\nMany SpecialAnnouncements will relate to particular regions and to identifiable local organizations. Use spatialCoverage for the region, and announcementLocation to indicate specific LocalBusinesses and CivicStructures. If the announcement affects both a particular region and a specific location (for example, a library closure that serves an entire region), use both spatialCoverage and announcementLocation.

\n\nThe about property can be used to indicate entities that are the focus of the announcement. We now recommend using about only\nfor representing non-location entities (e.g. a Course or a RadioStation). For places, use announcementLocation and spatialCoverage. Consumers of this markup should be aware that the initial design encouraged the use of about for locations too.

\n\nThe basic content of SpecialAnnouncement is similar to that of an RSS or Atom feed. For publishers without such feeds, basic feed-like information can be shared by posting\nSpecialAnnouncement updates in a page, e.g. using JSON-LD. For sites with Atom/RSS functionality, you can point to a feed\nwith the webFeed property. This can be a simple URL, or an inline DataFeed object, with encodingFormat providing\nmedia type information, e.g. \"application/rss+xml\" or \"application/atom+xml\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/SpecialAnnouncement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SpecialAnnouncement" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/Specialty", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any branch of a field in which people typically develop specific expertise, usually after significant study, time, and effort." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Specialty" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Specialty" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/SportingGoodsStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sporting goods store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SportingGoodsStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SportingGoodsStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/SportsActivityLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sports location, such as a playing field." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SportsActivityLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SportsActivityLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/SportsClub", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sports club." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SportsClub" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SportsClub" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/SportsActivityLocation" + } ] +}, { + "@id" : "https://schema.org/SportsEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: Sports event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SportsEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SportsEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/SportsOrganization", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents the collection of all sports organizations, including sports teams, governing bodies, and sports associations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SportsOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SportsOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/SportsTeam", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Organization: Sports team." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SportsTeam" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SportsTeam" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/SportsOrganization" + } ] +}, { + "@id" : "https://schema.org/SpreadsheetDigitalDocument", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A spreadsheet file." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SpreadsheetDigitalDocument" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SpreadsheetDigitalDocument" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DigitalDocument" + } ] +}, { + "@id" : "https://schema.org/StadiumOrArena", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A stadium." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/StadiumOrArena" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "StadiumOrArena" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + }, { + "@id" : "https://schema.org/SportsActivityLocation" + } ] +}, { + "@id" : "https://schema.org/State", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A state or province of a country." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/State" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "State" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AdministrativeArea" + } ] +}, { + "@id" : "https://schema.org/Statement", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A statement about something, for example a fun or interesting fact. If known, the main entity this statement is about can be indicated using mainEntity. For more formal claims (e.g. in Fact Checking), consider using Claim instead. Use the text property to capture the text of the statement." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Statement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Statement" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/StatisticalPopulation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A StatisticalPopulation is a set of instances of a certain given type that satisfy some set of constraints. The property populationType is used to specify the type. Any property that can be used on instances of that type can appear on the statistical population. For example, a StatisticalPopulation representing all Persons with a homeLocation of East Podunk California would be described by applying the appropriate homeLocation and populationType properties to a StatisticalPopulation item that stands for that set of people.\nThe properties numConstraints and constraintProperty are used to specify which of the populations properties are used to specify the population. Note that the sense of \"population\" used here is the general sense of a statistical\npopulation, and does not imply that the population consists of people. For example, a populationType of Event or NewsArticle could be used. See also Observation, where a populationType such as Person or Event can be indicated directly. In most cases it may be better to use StatisticalVariable instead of StatisticalPopulation." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/StatisticalPopulation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "StatisticalPopulation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/StatisticalVariable", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "StatisticalVariable represents any type of statistical metric that can be measured at a place and time. The usage pattern for StatisticalVariable is typically expressed using Observation with an explicit populationType, which is a type, typically drawn from Schema.org. Each StatisticalVariable is marked as a ConstraintNode, meaning that some properties (those listed using constraintProperty) serve in this setting solely to define the statistical variable rather than literally describe a specific person, place or thing. For example, a StatisticalVariable MedianHeightPerson_Female representing the median height of women, could be written as follows: the population type is Person; the measuredProperty height; the statType median; the gender Female. It is important to note that there are many kinds of scientific quantitative observation which are not fully, perfectly or unambiguously described following this pattern, or with solely Schema.org terminology. The approach taken here is designed to allow partial, incremental or minimal description of StatisticalVariables, and the use of detailed sets of entity and property IDs from external repositories. The measurementMethod, unitCode and unitText properties can also be used to clarify the specific nature and notation of an observed measurement." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/StatisticalVariable" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "StatisticalVariable" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ConstraintNode" + } ] +}, { + "@id" : "https://schema.org/StatusEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Lists or enumerations dealing with status types." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/StatusEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "StatusEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/SteeringPositionValue", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A value indicating a steering position." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SteeringPositionValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SteeringPositionValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/QualitativeValue" + } ] +}, { + "@id" : "https://schema.org/Store", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A retail good store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Store" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Store" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/StructuredValue", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Structured values are used when the value of a property has a more complex structure than simply being a textual value or a reference to another thing." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/StructuredValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "StructuredValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/StupidType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A StupidType for testing." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://attic.schema.org/StupidType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "StupidType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Thing" + } ] +}, { + "@id" : "https://schema.org/SubscribeAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of forming a personal connection with someone/something (object) unidirectionally/asymmetrically to get updates pushed to.

\n\nRelated actions:

\n\n
    \n
  • FollowAction: Unlike FollowAction, SubscribeAction implies that the subscriber acts as a passive agent being constantly/actively pushed for updates.
  • \n
  • RegisterAction: Unlike RegisterAction, SubscribeAction implies that the agent is interested in continuing receiving updates from the object.
  • \n
  • JoinAction: Unlike JoinAction, SubscribeAction implies that the agent is interested in continuing receiving updates from the object.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SubscribeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SubscribeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InteractAction" + } ] +}, { + "@id" : "https://schema.org/Substance", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any matter of defined composition that has discrete existence, whose origin may be biological, mineral or chemical." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/Substance" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Substance" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/SubwayStation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A subway station." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SubwayStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SubwayStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/Suite", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A suite in a hotel or other public accommodation, denotes a class of luxury accommodations, the key feature of which is multiple rooms (source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Suite_(hotel)).\n

\nSee also the dedicated document on the use of schema.org for marking up hotels and other forms of accommodations." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Suite" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Suite" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Accommodation" + } ] +}, { + "@id" : "https://schema.org/SuperficialAnatomy", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Anatomical features that can be observed by sight (without dissection), including the form and proportions of the human body as well as surface landmarks that correspond to deeper subcutaneous structures. Superficial anatomy plays an important role in sports medicine, phlebotomy, and other medical specialties as underlying anatomical structures can be identified through surface palpation. For example, during back surgery, superficial anatomy can be used to palpate and count vertebrae to find the site of incision. Or in phlebotomy, superficial anatomy can be used to locate an underlying vein; for example, the median cubital vein can be located by palpating the borders of the cubital fossa (such as the epicondyles of the humerus) and then looking for the superficial signs of the vein, such as size, prominence, ability to refill after depression, and feel of surrounding tissue support. As another example, in a subluxation (dislocation) of the glenohumeral joint, the bony structure becomes pronounced with the deltoid muscle failing to cover the glenohumeral joint allowing the edges of the scapula to be superficially visible. Here, the superficial anatomy is the visible edges of the scapula, implying the underlying dislocation of the joint (the related anatomical structure)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/SuperficialAnatomy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SuperficialAnatomy" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalEntity" + } ] +}, { + "@id" : "https://schema.org/SurgicalProcedure", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical procedure involving an incision with instruments; performed for diagnose, or therapeutic purposes." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/SurgicalProcedure" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SurgicalProcedure" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalProcedure" + } ] +}, { + "@id" : "https://schema.org/SuspendAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of momentarily pausing a device or application (e.g. pause music playback or pause a timer)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/SuspendAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "SuspendAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ControlAction" + } ] +}, { + "@id" : "https://schema.org/Syllabus", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A syllabus that describes the material covered in a course, often with several such sections per Course so that a distinct timeRequired can be provided for that section of the Course." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Syllabus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Syllabus" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LearningResource" + } ] +}, { + "@id" : "https://schema.org/Synagogue", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A synagogue." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Synagogue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Synagogue" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PlaceOfWorship" + } ] +}, { + "@id" : "https://schema.org/TVClip", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A short TV program or a segment/part of a TV program." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TVClip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TVClip" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Clip" + } ] +}, { + "@id" : "https://schema.org/TVEpisode", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A TV episode which can be part of a series or season." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TVEpisode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TVEpisode" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Episode" + } ] +}, { + "@id" : "https://schema.org/TVSeason", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Season dedicated to TV broadcast and associated online delivery." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TVSeason" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TVSeason" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/CreativeWorkSeason" + } ] +}, { + "@id" : "https://schema.org/TVSeries", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "CreativeWorkSeries dedicated to TV broadcast and associated online delivery." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TVSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TVSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + }, { + "@id" : "https://schema.org/CreativeWorkSeries" + } ] +}, { + "@id" : "https://schema.org/Table", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A table on a Web page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Table" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Table" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPageElement" + } ] +}, { + "@id" : "https://schema.org/TakeAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of gaining ownership of an object from an origin. Reciprocal of GiveAction.

\n\nRelated actions:

\n\n
    \n
  • GiveAction: The reciprocal of TakeAction.
  • \n
  • ReceiveAction: Unlike ReceiveAction, TakeAction implies that ownership has been transferred.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TakeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TakeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TransferAction" + } ] +}, { + "@id" : "https://schema.org/TattooParlor", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A tattoo parlor." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TattooParlor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TattooParlor" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/HealthAndBeautyBusiness" + } ] +}, { + "@id" : "https://schema.org/Taxi", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A taxi." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Taxi" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Taxi" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Service" + } ] +}, { + "@id" : "https://schema.org/TaxiReservation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A reservation for a taxi.

\n\nNote: This type is for information about actual reservations, e.g. in confirmation emails or HTML pages with individual confirmations of reservations. For offers of tickets, use Offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TaxiReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TaxiReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Reservation" + } ] +}, { + "@id" : "https://schema.org/TaxiService", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A service for a vehicle for hire with a driver for local travel. Fares are usually calculated based on distance traveled." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TaxiService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TaxiService" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Service" + } ] +}, { + "@id" : "https://schema.org/TaxiStand", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A taxi stand." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TaxiStand" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TaxiStand" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/Taxon", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A set of organisms asserted to represent a natural cohesive biological unit." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/Taxon" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Taxon" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Thing" + } ] +}, { + "@id" : "https://schema.org/TechArticle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A technical article - Example: How-to (task) topics, step-by-step, procedural troubleshooting, specifications, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TechArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TechArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Article" + } ] +}, { + "@id" : "https://schema.org/TelevisionChannel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A unique instance of a television BroadcastService on a CableOrSatelliteService lineup." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TelevisionChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TelevisionChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BroadcastChannel" + } ] +}, { + "@id" : "https://schema.org/TelevisionStation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A television station." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TelevisionStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TelevisionStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/TennisComplex", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A tennis complex." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TennisComplex" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TennisComplex" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/SportsActivityLocation" + } ] +}, { + "@id" : "https://schema.org/Text", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Data type: Text." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Text" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Text" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DataType" + } ] +}, { + "@id" : "https://schema.org/TextDigitalDocument", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A file composed primarily of text." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TextDigitalDocument" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TextDigitalDocument" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DigitalDocument" + } ] +}, { + "@id" : "https://schema.org/TextObject", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A text file. The text can be unformatted or contain markup, html, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TextObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TextObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MediaObject" + } ] +}, { + "@id" : "https://schema.org/TheaterEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: Theater performance." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TheaterEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TheaterEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/TheaterGroup", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A theater group or company, for example, the Royal Shakespeare Company or Druid Theatre." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TheaterGroup" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TheaterGroup" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PerformingGroup" + } ] +}, { + "@id" : "https://schema.org/TherapeuticProcedure", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical procedure intended primarily for therapeutic purposes, aimed at improving a health condition." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/TherapeuticProcedure" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TherapeuticProcedure" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalProcedure" + } ] +}, { + "@id" : "https://schema.org/Thesis", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A thesis or dissertation document submitted in support of candidature for an academic degree or professional qualification." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/Thesis" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Thesis" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/Thing", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The most generic type of item." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Thing" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Thing" + } ] +}, { + "@id" : "https://schema.org/Ticket", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Used to describe a ticket to an event, a flight, a bus ride, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Ticket" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Ticket" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/TieAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of reaching a draw in a competitive activity." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TieAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TieAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AchieveAction" + } ] +}, { + "@id" : "https://schema.org/Time", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A point in time recurring on multiple days in the form hh:mm:ss[Z|(+|-)hh:mm] (see XML schema for details)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Time" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Time" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/DataType" + } ] +}, { + "@id" : "https://schema.org/TipAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of giving money voluntarily to a beneficiary in recognition of services rendered." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TipAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TipAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/TradeAction" + } ] +}, { + "@id" : "https://schema.org/TireShop", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A tire shop." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TireShop" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TireShop" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/TouristAttraction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A tourist attraction. In principle any Thing can be a TouristAttraction, from a Mountain and LandmarksOrHistoricalBuildings to a LocalBusiness. This Type can be used on its own to describe a general TouristAttraction, or be used as an additionalType to add tourist attraction properties to any other type. (See examples below)" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TouristAttraction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TouristAttraction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Place" + } ] +}, { + "@id" : "https://schema.org/TouristDestination", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A tourist destination. In principle any Place can be a TouristDestination from a City, Region or Country to an AmusementPark or Hotel. This Type can be used on its own to describe a general TouristDestination, or be used as an additionalType to add tourist relevant properties to any other Place. A TouristDestination is defined as a Place that contains, or is colocated with, one or more TouristAttractions, often linked by a similar theme or interest to a particular touristType. The UNWTO defines Destination (main destination of a tourism trip) as the place visited that is central to the decision to take the trip.\n (See examples below.)" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/TouristDestination" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TouristDestination" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Place" + } ] +}, { + "@id" : "https://schema.org/TouristInformationCenter", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A tourist information center." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TouristInformationCenter" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TouristInformationCenter" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/TouristTrip", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A tourist trip. A created itinerary of visits to one or more places of interest (TouristAttraction/TouristDestination) often linked by a similar theme, geographic area, or interest to a particular touristType. The UNWTO defines tourism trip as the Trip taken by visitors.\n (See examples below.)" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/TouristTrip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TouristTrip" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Trip" + } ] +}, { + "@id" : "https://schema.org/ToyStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A toy store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ToyStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ToyStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/TrackAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An agent tracks an object for updates.

\n\nRelated actions:

\n\n
    \n
  • FollowAction: Unlike FollowAction, TrackAction refers to the interest on the location of innanimates objects.
  • \n
  • SubscribeAction: Unlike SubscribeAction, TrackAction refers to the interest on the location of innanimate objects.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TrackAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TrackAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FindAction" + } ] +}, { + "@id" : "https://schema.org/TradeAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of participating in an exchange of goods and services for monetary compensation. An agent trades an object, product or service with a participant in exchange for a one time or periodic payment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TradeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TradeAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/TrainReservation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A reservation for train travel.

\n\nNote: This type is for information about actual reservations, e.g. in confirmation emails or HTML pages with individual confirmations of reservations. For offers of tickets, use Offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TrainReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TrainReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Reservation" + } ] +}, { + "@id" : "https://schema.org/TrainStation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A train station." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TrainStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TrainStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/TrainTrip", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A trip on a commercial train line." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TrainTrip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TrainTrip" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Trip" + } ] +}, { + "@id" : "https://schema.org/TransferAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of transferring/moving (abstract or concrete) animate or inanimate objects from one place to another." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TransferAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TransferAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/TravelAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of traveling from a fromLocation to a destination by a specified mode of transport, optionally with participants." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TravelAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TravelAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MoveAction" + } ] +}, { + "@id" : "https://schema.org/TravelAgency", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A travel agency." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TravelAgency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TravelAgency" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LocalBusiness" + } ] +}, { + "@id" : "https://schema.org/TreatmentIndication", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An indication for treating an underlying condition, symptom, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/TreatmentIndication" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TreatmentIndication" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalIndication" + } ] +}, { + "@id" : "https://schema.org/Trip", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A trip or journey. An itinerary of visits to one or more places." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Trip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Trip" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/True", + "@type" : [ "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The boolean value true." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/True" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "True" + } ] +}, { + "@id" : "https://schema.org/TypeAndQuantityNode", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A structured value indicating the quantity, unit of measurement, and business function of goods included in a bundle offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/TypeAndQuantityNode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "TypeAndQuantityNode" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/UKNonprofitType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "UKNonprofitType: Non-profit organization type originating from the United Kingdom." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/UKNonprofitType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UKNonprofitType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/NonprofitType" + } ] +}, { + "@id" : "https://schema.org/URL", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Data type: URL." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/URL" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "URL" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Text" + } ] +}, { + "@id" : "https://schema.org/USNonprofitType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "USNonprofitType: Non-profit organization type originating from the United States." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/USNonprofitType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "USNonprofitType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/NonprofitType" + } ] +}, { + "@id" : "https://schema.org/UnRegisterAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of un-registering from a service.

\n\nRelated actions:

\n\n
    \n
  • RegisterAction: antonym of UnRegisterAction.
  • \n
  • LeaveAction: Unlike LeaveAction, UnRegisterAction implies that you are unregistering from a service you were previously registered, rather than leaving a team/group of people.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/UnRegisterAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UnRegisterAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/InteractAction" + } ] +}, { + "@id" : "https://schema.org/UnitPriceSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The price asked for a given offer by the respective organization or person." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/UnitPriceSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UnitPriceSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/PriceSpecification" + } ] +}, { + "@id" : "https://schema.org/UpdateAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of managing by changing/editing the state of the object." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/UpdateAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UpdateAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Action" + } ] +}, { + "@id" : "https://schema.org/UseAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of applying an object to its intended purpose." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/UseAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UseAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ConsumeAction" + } ] +}, { + "@id" : "https://schema.org/UserBlocks", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "UserInteraction and its subtypes is an old way of talking about users interacting with pages. It is generally better to use Action-based vocabulary, alongside types such as Comment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/UserBlocks" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UserBlocks" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/UserInteraction" + } ] +}, { + "@id" : "https://schema.org/UserCheckins", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "UserInteraction and its subtypes is an old way of talking about users interacting with pages. It is generally better to use Action-based vocabulary, alongside types such as Comment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/UserCheckins" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UserCheckins" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/UserInteraction" + } ] +}, { + "@id" : "https://schema.org/UserComments", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "UserInteraction and its subtypes is an old way of talking about users interacting with pages. It is generally better to use Action-based vocabulary, alongside types such as Comment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/UserComments" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UserComments" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/UserInteraction" + } ] +}, { + "@id" : "https://schema.org/UserDownloads", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "UserInteraction and its subtypes is an old way of talking about users interacting with pages. It is generally better to use Action-based vocabulary, alongside types such as Comment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/UserDownloads" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UserDownloads" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/UserInteraction" + } ] +}, { + "@id" : "https://schema.org/UserInteraction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "UserInteraction and its subtypes is an old way of talking about users interacting with pages. It is generally better to use Action-based vocabulary, alongside types such as Comment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/UserInteraction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UserInteraction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/UserLikes", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "UserInteraction and its subtypes is an old way of talking about users interacting with pages. It is generally better to use Action-based vocabulary, alongside types such as Comment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/UserLikes" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UserLikes" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/UserInteraction" + } ] +}, { + "@id" : "https://schema.org/UserPageVisits", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "UserInteraction and its subtypes is an old way of talking about users interacting with pages. It is generally better to use Action-based vocabulary, alongside types such as Comment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/UserPageVisits" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UserPageVisits" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/UserInteraction" + } ] +}, { + "@id" : "https://schema.org/UserPlays", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "UserInteraction and its subtypes is an old way of talking about users interacting with pages. It is generally better to use Action-based vocabulary, alongside types such as Comment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/UserPlays" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UserPlays" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/UserInteraction" + } ] +}, { + "@id" : "https://schema.org/UserPlusOnes", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "UserInteraction and its subtypes is an old way of talking about users interacting with pages. It is generally better to use Action-based vocabulary, alongside types such as Comment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/UserPlusOnes" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UserPlusOnes" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/UserInteraction" + } ] +}, { + "@id" : "https://schema.org/UserReview", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A review created by an end-user (e.g. consumer, purchaser, attendee etc.), in contrast with CriticReview." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/UserReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UserReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Review" + } ] +}, { + "@id" : "https://schema.org/UserTweets", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "UserInteraction and its subtypes is an old way of talking about users interacting with pages. It is generally better to use Action-based vocabulary, alongside types such as Comment." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/UserTweets" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "UserTweets" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/UserInteraction" + } ] +}, { + "@id" : "https://schema.org/VacationRental", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A kind of lodging business that focuses on renting single properties for limited time." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/VacationRental" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "VacationRental" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/LodgingBusiness" + } ] +}, { + "@id" : "https://schema.org/Vehicle", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A vehicle is a device that is designed or used to transport people or cargo over land, water, air, or through space." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Vehicle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Vehicle" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Product" + } ] +}, { + "@id" : "https://schema.org/Vein", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A type of blood vessel that specifically carries blood to the heart." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/Vein" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Vein" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Vessel" + } ] +}, { + "@id" : "https://schema.org/Vessel", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A component of the human body circulatory system comprised of an intricate network of hollow tubes that transport blood throughout the entire body." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/Vessel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Vessel" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AnatomicalStructure" + } ] +}, { + "@id" : "https://schema.org/VeterinaryCare", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A vet's office." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/VeterinaryCare" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "VeterinaryCare" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalOrganization" + } ] +}, { + "@id" : "https://schema.org/VideoGallery", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Web page type: Video gallery page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/VideoGallery" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "VideoGallery" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MediaGallery" + } ] +}, { + "@id" : "https://schema.org/VideoGame", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A video game is an electronic game that involves human interaction with a user interface to generate visual feedback on a video device." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/VideoGame" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "VideoGame" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Game" + }, { + "@id" : "https://schema.org/SoftwareApplication" + } ] +}, { + "@id" : "https://schema.org/VideoGameClip", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A short segment/part of a video game." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/VideoGameClip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "VideoGameClip" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Clip" + } ] +}, { + "@id" : "https://schema.org/VideoGameSeries", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A video game series." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/VideoGameSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "VideoGameSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWorkSeries" + } ] +}, { + "@id" : "https://schema.org/VideoObject", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A video file." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/VideoObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "VideoObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MediaObject" + } ] +}, { + "@id" : "https://schema.org/VideoObjectSnapshot", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A specific and exact (byte-for-byte) version of a VideoObject. Two byte-for-byte identical files, for the purposes of this type, considered identical. If they have different embedded metadata the files will differ. Different external facts about the files, e.g. creator or dateCreated that aren't represented in their actual content, do not affect this notion of identity." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/VideoObjectSnapshot" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "VideoObjectSnapshot" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/VideoObject" + } ] +}, { + "@id" : "https://schema.org/ViewAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of consuming static visual content." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ViewAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ViewAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ConsumeAction" + } ] +}, { + "@id" : "https://schema.org/VirtualLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An online or virtual location for attending events. For example, one may attend an online seminar or educational event. While a virtual location may be used as the location of an event, virtual locations should not be confused with physical locations in the real world." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/VirtualLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "VirtualLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Intangible" + } ] +}, { + "@id" : "https://schema.org/VisualArtsEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event type: Visual arts event." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/VisualArtsEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "VisualArtsEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Event" + } ] +}, { + "@id" : "https://schema.org/VisualArtwork", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A work of art that is primarily visual in character." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/VisualArtwork" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "VisualArtwork" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/VitalSign", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Vital signs are measures of various physiological functions in order to assess the most basic body functions." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/VitalSign" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "VitalSign" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MedicalSign" + } ] +}, { + "@id" : "https://schema.org/Volcano", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A volcano, like Fujisan." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Volcano" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Volcano" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Landform" + } ] +}, { + "@id" : "https://schema.org/VoteAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of expressing a preference from a fixed/finite/structured set of choices/options." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/VoteAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "VoteAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ChooseAction" + } ] +}, { + "@id" : "https://schema.org/WPAdBlock", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An advertising section of the page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WPAdBlock" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WPAdBlock" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPageElement" + } ] +}, { + "@id" : "https://schema.org/WPFooter", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The footer section of the page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WPFooter" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WPFooter" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPageElement" + } ] +}, { + "@id" : "https://schema.org/WPHeader", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The header section of the page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WPHeader" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WPHeader" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPageElement" + } ] +}, { + "@id" : "https://schema.org/WPSideBar", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sidebar section of the page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WPSideBar" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WPSideBar" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/WebPageElement" + } ] +}, { + "@id" : "https://schema.org/WantAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of expressing a desire about the object. An agent wants an object." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WantAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WantAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ReactAction" + } ] +}, { + "@id" : "https://schema.org/WarrantyPromise", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A structured value representing the duration and scope of services that will be provided to a customer free of charge in case of a defect or malfunction of a product." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WarrantyPromise" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WarrantyPromise" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/StructuredValue" + } ] +}, { + "@id" : "https://schema.org/WarrantyScope", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A range of services that will be provided to a customer free of charge in case of a defect or malfunction of a product.

\n\nCommonly used values:

\n\n
    \n
  • http://purl.org/goodrelations/v1#Labor-BringIn
  • \n
  • http://purl.org/goodrelations/v1#PartsAndLabor-BringIn
  • \n
  • http://purl.org/goodrelations/v1#PartsAndLabor-PickUp
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WarrantyScope" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WarrantyScope" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Enumeration" + } ] +}, { + "@id" : "https://schema.org/WatchAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of consuming dynamic/moving visual content." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WatchAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WatchAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/ConsumeAction" + } ] +}, { + "@id" : "https://schema.org/Waterfall", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A waterfall, like Niagara." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Waterfall" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Waterfall" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/BodyOfWater" + } ] +}, { + "@id" : "https://schema.org/WearAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of dressing oneself in clothing." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WearAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WearAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/UseAction" + } ] +}, { + "@id" : "https://schema.org/WearableMeasurementTypeEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates common types of measurement for wearables products." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/WearableMeasurementTypeEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WearableMeasurementTypeEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/MeasurementTypeEnumeration" + } ] +}, { + "@id" : "https://schema.org/WearableSizeGroupEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates common size groups (also known as \"size types\") for wearable products." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/WearableSizeGroupEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WearableSizeGroupEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/SizeGroupEnumeration" + } ] +}, { + "@id" : "https://schema.org/WearableSizeSystemEnumeration", + "@type" : [ "http://www.w3.org/2002/07/owl#Class", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Enumerates common size systems specific for wearable products." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/WearableSizeSystemEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WearableSizeSystemEnumeration" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/SizeSystemEnumeration" + } ] +}, { + "@id" : "https://schema.org/WebAPI", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An application programming interface accessible over Web/Internet technologies." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/WebAPI" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WebAPI" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Service" + } ] +}, { + "@id" : "https://schema.org/WebApplication", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Web applications." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WebApplication" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WebApplication" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/SoftwareApplication" + } ] +}, { + "@id" : "https://schema.org/WebContent", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "WebContent is a type representing all WebPage, WebSite and WebPageElement content. It is sometimes the case that detailed distinctions between Web pages, sites and their parts are not always important or obvious. The WebContent type makes it easier to describe Web-addressable content without requiring such distinctions to always be stated. (The intent is that the existing types WebPage, WebSite and WebPageElement will eventually be declared as subtypes of WebContent.)" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/WebContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WebContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/WebPage", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A web page. Every web page is implicitly assumed to be declared to be of type WebPage, so the various properties about that webpage, such as breadcrumb may be used. We recommend explicit declaration if these properties are specified, but if they are found outside of an itemscope, they will be assumed to be about the page." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WebPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WebPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/WebPageElement", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A web page element, like a table or an image." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WebPageElement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WebPageElement" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/WebSite", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A WebSite is a set of related web pages and other items typically served from a single web domain and accessible via URLs." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WebSite" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WebSite" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreativeWork" + } ] +}, { + "@id" : "https://schema.org/WholesaleStore", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A wholesale store." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WholesaleStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WholesaleStore" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Store" + } ] +}, { + "@id" : "https://schema.org/WinAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of achieving victory in a competitive activity." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WinAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WinAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/AchieveAction" + } ] +}, { + "@id" : "https://schema.org/Winery", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A winery." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Winery" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Winery" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/FoodEstablishment" + } ] +}, { + "@id" : "https://schema.org/WorkBasedProgram", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A program with both an educational and employment component. Typically based at a workplace and structured around work-based learning, with the aim of instilling competencies related to an occupation. WorkBasedProgram is used to distinguish programs such as apprenticeships from school, college or other classroom based educational programs." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/WorkBasedProgram" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WorkBasedProgram" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/EducationalOccupationalProgram" + } ] +}, { + "@id" : "https://schema.org/WorkersUnion", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Workers Union (also known as a Labor Union, Labour Union, or Trade Union) is an organization that promotes the interests of its worker members by collectively bargaining with management, organizing, and political lobbying." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WorkersUnion" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WorkersUnion" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Organization" + } ] +}, { + "@id" : "https://schema.org/WriteAction", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The act of authoring written creative content." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/WriteAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "WriteAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CreateAction" + } ] +}, { + "@id" : "https://schema.org/XPathType", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Text representing an XPath (typically but not necessarily version 1.0)." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/XPathType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "XPathType" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/Text" + } ] +}, { + "@id" : "https://schema.org/Zoo", + "@type" : [ "http://www.w3.org/2002/07/owl#Class" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A zoo." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/Zoo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "Zoo" + } ], + "http://www.w3.org/2000/01/rdf-schema#subClassOf" : [ { + "@id" : "https://schema.org/CivicStructure" + } ] +}, { + "@id" : "https://schema.org/about", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The subject matter of the content." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/about" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "about" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/subjectOf" + } ] +}, { + "@id" : "https://schema.org/abridged", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether the book is an abridged edition." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid11" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/abridged" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "abridged" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid13" + } ] +}, { + "@id" : "https://schema.org/abstract", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An abstract is a short description that summarizes a CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid15" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/abstract" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "abstract" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid17" + } ] +}, { + "@id" : "https://schema.org/accelerationTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The time needed to accelerate the vehicle from a given start velocity to a given target velocity.

\n\nTypical unit code(s): SEC for seconds

\n\n
    \n
  • Note: There are unfortunately no standard unit codes for seconds/0..100 km/h or seconds/0..60 mph. Simply use \"SEC\" for seconds and indicate the velocities in the name of the QuantitativeValue, or use valueReference with a QuantitativeValue of 0..60 mph or 0..100 km/h to specify the reference speeds.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid21" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/accelerationTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accelerationTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid23" + } ] +}, { + "@id" : "https://schema.org/acceptedAnswer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The answer(s) that has been accepted as best, typically on a Question/Answer site. Sites vary in their selection mechanisms, e.g. drawing on community opinion and/or the view of the Question author." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid28" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/acceptedAnswer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "acceptedAnswer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid30" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/suggestedAnswer" + } ] +}, { + "@id" : "https://schema.org/acceptedOffer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The offer(s) -- e.g., product, quantity and price combinations -- included in the order." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid36" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/acceptedOffer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "acceptedOffer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid38" + } ] +}, { + "@id" : "https://schema.org/acceptedPaymentMethod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The payment method(s) accepted by seller for this offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid43" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/acceptedPaymentMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "acceptedPaymentMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid46" + } ] +}, { + "@id" : "https://schema.org/acceptsReservations", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether a FoodEstablishment accepts reservations. Values can be Boolean, an URL at which reservations can be made or (for backwards compatibility) the strings Yes or No." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid52" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/acceptsReservations" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "acceptsReservations" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid54" + } ] +}, { + "@id" : "https://schema.org/accessCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Password, PIN, or access code needed for delivery (e.g. from a locker)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid59" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/accessCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accessCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid61" + } ] +}, { + "@id" : "https://schema.org/accessMode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The human sensory perceptual system or cognitive faculty through which a person may process or perceive information. Values should be drawn from the approved vocabulary." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid65" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/accessMode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accessMode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid67" + } ] +}, { + "@id" : "https://schema.org/accessModeSufficient", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A list of single or combined accessModes that are sufficient to understand all the intellectual content of a resource. Values should be drawn from the approved vocabulary." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid71" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/accessModeSufficient" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accessModeSufficient" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid73" + } ] +}, { + "@id" : "https://schema.org/accessibilityAPI", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates that the resource is compatible with the referenced accessibility API. Values should be drawn from the approved vocabulary." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid78" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/accessibilityAPI" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accessibilityAPI" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid80" + } ] +}, { + "@id" : "https://schema.org/accessibilityControl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Identifies input methods that are sufficient to fully control the described resource. Values should be drawn from the approved vocabulary." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid84" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/accessibilityControl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accessibilityControl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid86" + } ] +}, { + "@id" : "https://schema.org/accessibilityFeature", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Content features of the resource, such as accessible media, alternatives and supported enhancements for accessibility. Values should be drawn from the approved vocabulary." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid90" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/accessibilityFeature" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accessibilityFeature" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid92" + } ] +}, { + "@id" : "https://schema.org/accessibilityHazard", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A characteristic of the described resource that is physiologically dangerous to some users. Related to WCAG 2.0 guideline 2.3. Values should be drawn from the approved vocabulary." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid96" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/accessibilityHazard" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accessibilityHazard" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid98" + } ] +}, { + "@id" : "https://schema.org/accessibilitySummary", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A human-readable summary of specific accessibility features or deficiencies, consistent with the other accessibility metadata but expressing subtleties such as \"short descriptions are present but long descriptions will be needed for non-visual users\" or \"short descriptions are present and no long descriptions are needed\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid102" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/accessibilitySummary" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accessibilitySummary" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid104" + } ] +}, { + "@id" : "https://schema.org/accommodationCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Category of an Accommodation, following real estate conventions, e.g. RESO (see PropertySubType, and PropertyType fields for suggested values)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid108" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/accommodationCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accommodationCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid110" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/category" + } ] +}, { + "@id" : "https://schema.org/accommodationFloorPlan", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A floorplan of some Accommodation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid114" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/accommodationFloorPlan" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accommodationFloorPlan" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid117" + } ] +}, { + "@id" : "https://schema.org/accountId", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The identifier for the account the payment will be applied to." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid122" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/accountId" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accountId" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid124" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/accountMinimumInflow", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A minimum amount that has to be paid in every month." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid128" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/accountMinimumInflow" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accountMinimumInflow" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid130" + } ] +}, { + "@id" : "https://schema.org/accountOverdraftLimit", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An overdraft is an extension of credit from a lending institution when an account reaches zero. An overdraft allows the individual to continue withdrawing money even if the account has no funds in it. Basically the bank allows people to borrow a set amount of money." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid135" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/accountOverdraftLimit" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accountOverdraftLimit" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid137" + } ] +}, { + "@id" : "https://schema.org/accountablePerson", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies the Person that is legally accountable for the CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid142" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/accountablePerson" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "accountablePerson" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid144" + } ] +}, { + "@id" : "https://schema.org/acquireLicensePage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a page documenting how licenses can be purchased or otherwise acquired, for the current item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid149" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/acquireLicensePage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "acquireLicensePage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid151" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/usageInfo" + } ] +}, { + "@id" : "https://schema.org/acquiredFrom", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The organization or person from which the product was acquired." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid156" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/acquiredFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "acquiredFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid158" + } ] +}, { + "@id" : "https://schema.org/acrissCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The ACRISS Car Classification Code is a code used by many car rental companies, for classifying vehicles. ACRISS stands for Association of Car Rental Industry Systems and Standards." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid164" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/acrissCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "acrissCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid167" + } ] +}, { + "@id" : "https://schema.org/actionAccessibilityRequirement", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A set of requirements that must be fulfilled in order to perform an Action. If more than one value is specified, fulfilling one set of requirements will allow the Action to be performed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid171" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/actionAccessibilityRequirement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "actionAccessibilityRequirement" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid173" + } ] +}, { + "@id" : "https://schema.org/actionApplication", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An application that can complete the request." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid178" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/actionApplication" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "actionApplication" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid180" + } ] +}, { + "@id" : "https://schema.org/actionOption", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of object. The options subject to this action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid185" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/actionOption" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "actionOption" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid187" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/object" + } ] +}, { + "@id" : "https://schema.org/actionPlatform", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The high level platform(s) where the Action can be performed for the given URL. To specify a specific application or operating system instance, use actionApplication." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid192" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/actionPlatform" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "actionPlatform" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid194" + } ] +}, { + "@id" : "https://schema.org/actionStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the current disposition of the Action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid199" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/actionStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "actionStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid201" + } ] +}, { + "@id" : "https://schema.org/actionableFeedbackPolicy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For a NewsMediaOrganization or other news-related Organization, a statement about public engagement activities (for news media, the newsroom’s), including involving the public - digitally or otherwise -- in coverage decisions, reporting and activities after publication." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid206" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/actionableFeedbackPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "actionableFeedbackPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid209" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/publishingPrinciples" + } ] +}, { + "@id" : "https://schema.org/activeIngredient", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An active ingredient, typically chemical compounds and/or biologic substances." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid214" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/activeIngredient" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "activeIngredient" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid219" + } ] +}, { + "@id" : "https://schema.org/activityDuration", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Length of time to engage in the activity." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid223" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/activityDuration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "activityDuration" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid225" + } ] +}, { + "@id" : "https://schema.org/activityFrequency", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "How often one should engage in the activity." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid231" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/activityFrequency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "activityFrequency" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid233" + } ] +}, { + "@id" : "https://schema.org/actor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An actor, e.g. in TV, radio, movie, video games etc., or in an event. Actors can be associated with individual items or with a series, episode, clip." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid238" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/actor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "actor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid251" + } ] +}, { + "@id" : "https://schema.org/actors", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An actor, e.g. in TV, radio, movie, video games etc. Actors can be associated with individual items or with a series, episode, clip." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid256" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/actors" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "actors" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid266" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/actor" + } ] +}, { + "@id" : "https://schema.org/addOn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An additional offer that can only be obtained in combination with the first base offer (e.g. supplements and extensions that are available for a surcharge)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid271" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/addOn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "addOn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid273" + } ] +}, { + "@id" : "https://schema.org/additionalName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An additional name for a Person, can be used for a middle name." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid278" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/additionalName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "additionalName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid280" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/alternateName" + } ] +}, { + "@id" : "https://schema.org/additionalNumberOfGuests", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "If responding yes, the number of guests who will attend in addition to the invitee." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid284" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/additionalNumberOfGuests" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "additionalNumberOfGuests" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid286" + } ] +}, { + "@id" : "https://schema.org/additionalProperty", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A property-value pair representing an additional characteristic of the entity, e.g. a product feature or another characteristic for which there is no matching property in schema.org.

\n\nNote: Publishers should be aware that applications designed to use specific schema.org properties (e.g. https://schema.org/width, https://schema.org/color, https://schema.org/gtin13, ...) will typically expect such data to be provided using those properties, rather than using the generic property/value mechanism." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid288" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/additionalProperty" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "additionalProperty" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid295" + } ] +}, { + "@id" : "https://schema.org/additionalType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An additional type for the item, typically used for adding more specific types from external vocabularies in microdata syntax. This is a relationship between something and a class that the thing is in. Typically the value is a URI-identified RDF class, and in this case corresponds to the\n use of rdf:type in RDF. Text values can be used sparingly, for cases where useful information can be added without their being an appropriate schema to reference. In the case of text values, the class label should follow the schema.org style guide." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid300" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/additionalType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "additionalType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid302" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" + } ] +}, { + "@id" : "https://schema.org/additionalVariable", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any additional component of the exercise prescription that may need to be articulated to the patient. This may include the order of exercises, the number of repetitions of movement, quantitative distance, progressions over time, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid306" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/additionalVariable" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "additionalVariable" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid308" + } ] +}, { + "@id" : "https://schema.org/address", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Physical address of the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid312" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/address" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "address" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid318" + } ] +}, { + "@id" : "https://schema.org/addressCountry", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The country. For example, USA. You can also provide the two-letter ISO 3166-1 alpha-2 country code." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid323" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/addressCountry" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "addressCountry" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid328" + } ] +}, { + "@id" : "https://schema.org/addressLocality", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The locality in which the street address is, and which is in the region. For example, Mountain View." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid333" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/addressLocality" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "addressLocality" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid335" + } ] +}, { + "@id" : "https://schema.org/addressRegion", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The region in which the locality is, and which is in the country. For example, California or another appropriate first-level Administrative division." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid339" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/addressRegion" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "addressRegion" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid342" + } ] +}, { + "@id" : "https://schema.org/administrationRoute", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A route by which this drug may be administered, e.g. 'oral'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid346" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/administrationRoute" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "administrationRoute" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid348" + } ] +}, { + "@id" : "https://schema.org/advanceBookingRequirement", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The amount of time that is required between accepting the offer and the actual usage of the resource or service." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid352" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/advanceBookingRequirement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "advanceBookingRequirement" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid355" + } ] +}, { + "@id" : "https://schema.org/adverseOutcome", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A possible complication and/or side effect of this therapy. If it is known that an adverse outcome is serious (resulting in death, disability, or permanent damage; requiring hospitalization; or otherwise life-threatening or requiring immediate medical attention), tag it as a seriousAdverseOutcome instead." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid360" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/adverseOutcome" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "adverseOutcome" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid363" + } ] +}, { + "@id" : "https://schema.org/affectedBy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Drugs that affect the test's results." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid368" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/affectedBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "affectedBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid370" + } ] +}, { + "@id" : "https://schema.org/affiliation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An organization that this person is affiliated with. For example, a school/university, a club, or a team." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid375" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/affiliation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "affiliation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid377" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/memberOf" + } ] +}, { + "@id" : "https://schema.org/afterMedia", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A media object representing the circumstances after performing this direction." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid382" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/afterMedia" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "afterMedia" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid384" + } ] +}, { + "@id" : "https://schema.org/agent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The direct performer or driver of the action (animate or inanimate). E.g. John wrote a book." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid389" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/agent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "agent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid391" + } ] +}, { + "@id" : "https://schema.org/agentInteractionStatistic", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of completed interactions for this entity, in a particular role (the 'agent'), in a particular action (indicated in the statistic), and in a particular context (i.e. interactionService)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid397" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/agentInteractionStatistic" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "agentInteractionStatistic" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid400" + } ] +}, { + "@id" : "https://schema.org/aggregateRating", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The overall rating, based on a collection of reviews or ratings, of the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid405" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/aggregateRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "aggregateRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid414" + } ] +}, { + "@id" : "https://schema.org/aircraft", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The kind of aircraft (e.g., \"Boeing 747\")." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid419" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/aircraft" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "aircraft" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid421" + } ] +}, { + "@id" : "https://schema.org/album", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A music album." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid426" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/album" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "album" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid428" + } ] +}, { + "@id" : "https://schema.org/albumProductionType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Classification of the album by its type of content: soundtrack, live album, studio album, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid433" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/albumProductionType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "albumProductionType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid435" + } ] +}, { + "@id" : "https://schema.org/albumRelease", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A release of this album." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid440" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/albumRelease" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "albumRelease" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid442" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/releaseOf" + } ] +}, { + "@id" : "https://schema.org/albumReleaseType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The kind of release which this album is: single, EP or album." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid447" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/albumReleaseType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "albumReleaseType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid449" + } ] +}, { + "@id" : "https://schema.org/albums", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A collection of music albums." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid454" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/albums" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "albums" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid456" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/album" + } ] +}, { + "@id" : "https://schema.org/alcoholWarning", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any precaution, guidance, contraindication, etc. related to consumption of alcohol while taking this drug." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid461" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/alcoholWarning" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "alcoholWarning" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid463" + } ] +}, { + "@id" : "https://schema.org/algorithm", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The algorithm or rules to follow to compute the score." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid467" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/algorithm" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "algorithm" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid469" + } ] +}, { + "@id" : "https://schema.org/alignmentType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A category of alignment between the learning resource and the framework node. Recommended values include: 'requires', 'textComplexity', 'readingLevel', and 'educationalSubject'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid473" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/alignmentType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "alignmentType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid475" + } ] +}, { + "@id" : "https://schema.org/alternateName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An alias for the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid479" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/alternateName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "alternateName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid481" + } ] +}, { + "@id" : "https://schema.org/alternativeHeadline", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A secondary title of the CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid485" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/alternativeHeadline" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "alternativeHeadline" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid487" + } ] +}, { + "@id" : "https://schema.org/alternativeOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Another gene which is a variation of this one." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid491" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/alternativeOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "alternativeOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid493" + } ] +}, { + "@id" : "https://schema.org/alumni", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Alumni of an organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid498" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/alumni" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "alumni" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid501" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/alumniOf" + } ] +}, { + "@id" : "https://schema.org/alumniOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An organization that the person is an alumni of." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid506" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/alumniOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "alumniOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid508" + } ] +}, { + "@id" : "https://schema.org/amenityFeature", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An amenity feature (e.g. a characteristic or service) of the Accommodation. This generic property does not make a statement about whether the feature is included in an offer for the main accommodation or available at extra costs." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid514" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/amenityFeature" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "amenityFeature" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid519" + } ] +}, { + "@id" : "https://schema.org/amount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The amount of money." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid524" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/amount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "amount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid530" + } ] +}, { + "@id" : "https://schema.org/amountOfThisGood", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The quantity of the goods included in the offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid536" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/amountOfThisGood" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "amountOfThisGood" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid538" + } ] +}, { + "@id" : "https://schema.org/announcementLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a specific CivicStructure or LocalBusiness associated with the SpecialAnnouncement. For example, a specific testing facility or business with special opening hours. For a larger geographic region like a quarantine of an entire region, use spatialCoverage." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid540" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/announcementLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "announcementLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid542" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/spatialCoverage" + } ] +}, { + "@id" : "https://schema.org/annualPercentageRate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The annual rate that is charged for borrowing (or made by investing), expressed as a single percentage number that represents the actual yearly cost of funds over the term of a loan. This includes any fees or additional costs associated with the transaction." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid548" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/annualPercentageRate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "annualPercentageRate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid550" + } ] +}, { + "@id" : "https://schema.org/answerCount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of answers this question has received." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid556" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/answerCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "answerCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid558" + } ] +}, { + "@id" : "https://schema.org/answerExplanation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A step-by-step or full explanation about Answer. Can outline how this Answer was achieved or contain more broad clarification or statement about it." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid560" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/answerExplanation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "answerExplanation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid562" + } ] +}, { + "@id" : "https://schema.org/antagonist", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The muscle whose action counteracts the specified muscle." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid568" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/antagonist" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "antagonist" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid570" + } ] +}, { + "@id" : "https://schema.org/appearance", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates an occurrence of a Claim in some CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid575" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/appearance" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "appearance" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid577" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/workExample" + } ] +}, { + "@id" : "https://schema.org/applicableCountry", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A country where a particular merchant return policy applies to, for example the two-letter ISO 3166-1 alpha-2 country code." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid582" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/applicableCountry" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "applicableCountry" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid584" + } ] +}, { + "@id" : "https://schema.org/applicableLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The location in which the status applies." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid589" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/applicableLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "applicableLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid592" + } ] +}, { + "@id" : "https://schema.org/applicantLocationRequirements", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The location(s) applicants can apply from. This is usually used for telecommuting jobs where the applicant does not need to be in a physical office. Note: This should not be used for citizenship or work visa requirements." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid597" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/applicantLocationRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "applicantLocationRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid599" + } ] +}, { + "@id" : "https://schema.org/application", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An application that can complete the request." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid604" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/application" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "application" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid606" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/actionApplication" + } ] +}, { + "@id" : "https://schema.org/applicationCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Type of software application, e.g. 'Game, Multimedia'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid611" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/applicationCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "applicationCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid613" + } ] +}, { + "@id" : "https://schema.org/applicationContact", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Contact details for further information relevant to this job posting." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid617" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/applicationContact" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "applicationContact" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid619" + } ] +}, { + "@id" : "https://schema.org/applicationDeadline", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date at which the program stops collecting applications for the next enrollment cycle." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid624" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/applicationDeadline" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "applicationDeadline" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid626" + } ] +}, { + "@id" : "https://schema.org/applicationStartDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date at which the program begins collecting applications for the next enrollment cycle." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid628" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/applicationStartDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "applicationStartDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid630" + } ] +}, { + "@id" : "https://schema.org/applicationSubCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Subcategory of the application, e.g. 'Arcade Game'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid632" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/applicationSubCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "applicationSubCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid634" + } ] +}, { + "@id" : "https://schema.org/applicationSuite", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The name of the application suite to which the application belongs (e.g. Excel belongs to Office)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid638" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/applicationSuite" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "applicationSuite" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid640" + } ] +}, { + "@id" : "https://schema.org/appliesToDeliveryMethod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The delivery method(s) to which the delivery charge or payment charge specification applies." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid644" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/appliesToDeliveryMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "appliesToDeliveryMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid647" + } ] +}, { + "@id" : "https://schema.org/appliesToPaymentMethod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The payment method(s) to which the payment charge specification applies." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid652" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/appliesToPaymentMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "appliesToPaymentMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid654" + } ] +}, { + "@id" : "https://schema.org/archiveHeld", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Collection, fonds, or item held, kept or maintained by an ArchiveOrganization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid659" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/archiveHeld" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "archiveHeld" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid661" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/holdingArchive" + } ] +}, { + "@id" : "https://schema.org/archivedAt", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a page or other link involved in archival of a CreativeWork. In the case of MediaReview, the items in a MediaReviewItem may often become inaccessible, but be archived by archival, journalistic, activist, or law enforcement organizations. In such cases, the referenced page may not directly publish the content." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid666" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/archivedAt" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "archivedAt" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid668" + } ] +}, { + "@id" : "https://schema.org/area", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The area within which users can expect to reach the broadcast service." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid673" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/area" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "area" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid675" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/serviceArea" + } ] +}, { + "@id" : "https://schema.org/areaServed", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The geographic area where a service or offered item is provided." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid680" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/areaServed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "areaServed" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid687" + } ] +}, { + "@id" : "https://schema.org/arrivalAirport", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The airport where the flight terminates." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid694" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/arrivalAirport" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "arrivalAirport" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid696" + } ] +}, { + "@id" : "https://schema.org/arrivalBoatTerminal", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The terminal or port from which the boat arrives." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid701" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/arrivalBoatTerminal" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "arrivalBoatTerminal" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid703" + } ] +}, { + "@id" : "https://schema.org/arrivalBusStop", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The stop or station from which the bus arrives." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid708" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/arrivalBusStop" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "arrivalBusStop" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid710" + } ] +}, { + "@id" : "https://schema.org/arrivalGate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Identifier of the flight's arrival gate." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid716" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/arrivalGate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "arrivalGate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid718" + } ] +}, { + "@id" : "https://schema.org/arrivalPlatform", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The platform where the train arrives." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid722" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/arrivalPlatform" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "arrivalPlatform" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid724" + } ] +}, { + "@id" : "https://schema.org/arrivalStation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The station where the train trip ends." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid728" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/arrivalStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "arrivalStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid730" + } ] +}, { + "@id" : "https://schema.org/arrivalTerminal", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Identifier of the flight's arrival terminal." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid735" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/arrivalTerminal" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "arrivalTerminal" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid737" + } ] +}, { + "@id" : "https://schema.org/arrivalTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The expected arrival time." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid741" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/arrivalTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "arrivalTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid743" + } ] +}, { + "@id" : "https://schema.org/artEdition", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of copies when multiple copies of a piece of artwork are produced - e.g. for a limited edition of 20 prints, 'artEdition' refers to the total number of copies (in this example \"20\")." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid746" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/artEdition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "artEdition" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid748" + } ] +}, { + "@id" : "https://schema.org/artMedium", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The material used. (E.g. Oil, Watercolour, Acrylic, Linoprint, Marble, Cyanotype, Digital, Lithograph, DryPoint, Intaglio, Pastel, Woodcut, Pencil, Mixed Media, etc.)" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid753" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/artMedium" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "artMedium" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid755" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/material" + } ] +}, { + "@id" : "https://schema.org/arterialBranch", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The branches that comprise the arterial structure." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid759" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/arterialBranch" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "arterialBranch" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid761" + } ] +}, { + "@id" : "https://schema.org/artform", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "e.g. Painting, Drawing, Sculpture, Print, Photograph, Assemblage, Collage, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid766" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/artform" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "artform" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid768" + } ] +}, { + "@id" : "https://schema.org/articleBody", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The actual body of the article." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid772" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/articleBody" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "articleBody" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid774" + } ] +}, { + "@id" : "https://schema.org/articleSection", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Articles may belong to one or more 'sections' in a magazine or newspaper, such as Sports, Lifestyle, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid778" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/articleSection" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "articleSection" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid780" + } ] +}, { + "@id" : "https://schema.org/artist", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The primary artist for a work\n in a medium other than pencils or digital line art--for example, if the\n primary artwork is done in watercolors or digital paints." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid784" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/artist" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "artist" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid788" + } ] +}, { + "@id" : "https://schema.org/artworkSurface", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The supporting materials for the artwork, e.g. Canvas, Paper, Wood, Board, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid793" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/artworkSurface" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "artworkSurface" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid795" + } ] +}, { + "@id" : "https://schema.org/asin", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An Amazon Standard Identification Number (ASIN) is a 10-character alphanumeric unique identifier assigned by Amazon.com and its partners for product identification within the Amazon organization (summary from Wikipedia's article).

\n\nNote also that this is a definition for how to include ASINs in Schema.org data, and not a definition of ASINs in general - see documentation from Amazon for authoritative details.\nASINs are most commonly encoded as text strings, but the [asin] property supports URL/URI as potential values too." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid799" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/asin" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "asin" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid803" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/aspect", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An aspect of medical practice that is considered on the page, such as 'diagnosis', 'treatment', 'causes', 'prognosis', 'etiology', 'epidemiology', etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid807" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/aspect" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "aspect" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid809" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/mainContentOfPage" + } ] +}, { + "@id" : "https://schema.org/assembly", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Library file name, e.g., mscorlib.dll, system.web.dll." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid813" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/assembly" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "assembly" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid815" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/executableLibraryName" + } ] +}, { + "@id" : "https://schema.org/assemblyVersion", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Associated product/technology version. E.g., .NET Framework 4.5." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid819" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/assemblyVersion" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "assemblyVersion" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid821" + } ] +}, { + "@id" : "https://schema.org/assesses", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The item being described is intended to assess the competency or learning outcome defined by the referenced term." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid825" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/assesses" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "assesses" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid829" + } ] +}, { + "@id" : "https://schema.org/associatedAnatomy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The anatomy of the underlying organ system or structures associated with this entity." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid834" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/associatedAnatomy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "associatedAnatomy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid837" + } ] +}, { + "@id" : "https://schema.org/associatedArticle", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A NewsArticle associated with the Media Object." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid844" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/associatedArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "associatedArticle" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid846" + } ] +}, { + "@id" : "https://schema.org/associatedClaimReview", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An associated ClaimReview, related by specific common content, topic or claim. The expectation is that this property would be most typically used in cases where a single activity is conducting both claim reviews and media reviews, in which case relatedMediaReview would commonly be used on a ClaimReview, while relatedClaimReview would be used on MediaReview." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid851" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/associatedClaimReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "associatedClaimReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid853" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/associatedReview" + } ] +}, { + "@id" : "https://schema.org/associatedDisease", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Disease associated to this BioChemEntity. Such disease can be a MedicalCondition or a URL. If you want to add an evidence supporting the association, please use PropertyValue." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid858" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/associatedDisease" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "associatedDisease" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid860" + } ] +}, { + "@id" : "https://schema.org/associatedMedia", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A media object that encodes this CreativeWork. This property is a synonym for encoding." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid866" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/associatedMedia" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "associatedMedia" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid870" + } ] +}, { + "@id" : "https://schema.org/associatedMediaReview", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An associated MediaReview, related by specific common content, topic or claim. The expectation is that this property would be most typically used in cases where a single activity is conducting both claim reviews and media reviews, in which case relatedMediaReview would commonly be used on a ClaimReview, while relatedClaimReview would be used on MediaReview." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid875" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/associatedMediaReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "associatedMediaReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid877" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/associatedReview" + } ] +}, { + "@id" : "https://schema.org/associatedPathophysiology", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "If applicable, a description of the pathophysiology associated with the anatomical system, including potential abnormal changes in the mechanical, physical, and biochemical functions of the system." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid882" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/associatedPathophysiology" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "associatedPathophysiology" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid886" + } ] +}, { + "@id" : "https://schema.org/associatedReview", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An associated Review." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid890" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/associatedReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "associatedReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid892" + } ] +}, { + "@id" : "https://schema.org/athlete", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A person that acts as performing member of a sports team; a player as opposed to a coach." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid897" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/athlete" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "athlete" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid899" + } ] +}, { + "@id" : "https://schema.org/attendee", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A person or organization attending the event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid904" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/attendee" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "attendee" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid906" + } ] +}, { + "@id" : "https://schema.org/attendees", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A person attending the event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid912" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/attendees" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "attendees" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid914" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/attendee" + } ] +}, { + "@id" : "https://schema.org/audience", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An intended audience, i.e. a group for whom something was created." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid920" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/audience" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "audience" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid927" + } ] +}, { + "@id" : "https://schema.org/audienceType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The target group associated with a given audience (e.g. veterans, car owners, musicians, etc.)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid932" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/audienceType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "audienceType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid934" + } ] +}, { + "@id" : "https://schema.org/audio", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An embedded audio object." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid938" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/audio" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "audio" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid940" + } ] +}, { + "@id" : "https://schema.org/auditDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Date when a certification was last audited. See also gs1:certificationAuditDate." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid947" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/auditDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "auditDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid949" + } ] +}, { + "@id" : "https://schema.org/authenticator", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Organization responsible for authenticating the user's subscription. For example, many media apps require a cable/satellite provider to authenticate your subscription before playing media." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid952" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/authenticator" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "authenticator" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid954" + } ] +}, { + "@id" : "https://schema.org/author", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The author of this content or rating. Please note that author is special in that HTML 5 provides a special mechanism for indicating authorship via the rel tag. That is equivalent to this and may be used interchangeably." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid959" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/author" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "author" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid962" + } ] +}, { + "@id" : "https://schema.org/availability", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The availability of this item—for example In stock, Out of stock, Pre-order, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid968" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/availability" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "availability" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid971" + } ] +}, { + "@id" : "https://schema.org/availabilityEnds", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The end of the availability of the product or service included in the offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid976" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/availabilityEnds" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "availabilityEnds" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid980" + } ] +}, { + "@id" : "https://schema.org/availabilityStarts", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The beginning of the availability of the product or service included in the offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid984" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/availabilityStarts" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "availabilityStarts" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid988" + } ] +}, { + "@id" : "https://schema.org/availableAtOrFrom", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The place(s) from which the offer can be obtained (e.g. store locations)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid992" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/availableAtOrFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "availableAtOrFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid995" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/areaServed" + } ] +}, { + "@id" : "https://schema.org/availableChannel", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A means of accessing the service (e.g. a phone bank, a web site, a location, etc.)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1000" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/availableChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "availableChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1002" + } ] +}, { + "@id" : "https://schema.org/availableDeliveryMethod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The delivery method(s) available for this offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1007" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/availableDeliveryMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "availableDeliveryMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1010" + } ] +}, { + "@id" : "https://schema.org/availableFrom", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "When the item is available for pickup from the store, locker, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1015" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/availableFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "availableFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1017" + } ] +}, { + "@id" : "https://schema.org/availableIn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The location in which the strength is available." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1019" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/availableIn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "availableIn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1021" + } ] +}, { + "@id" : "https://schema.org/availableLanguage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A language someone may use with or at the item, service or place. Please use one of the language codes from the IETF BCP 47 standard. See also inLanguage." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1026" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/availableLanguage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "availableLanguage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1032" + } ] +}, { + "@id" : "https://schema.org/availableOnDevice", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Device required to run the application. Used in cases where a specific make/model is required to run the application." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1037" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/availableOnDevice" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "availableOnDevice" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1039" + } ] +}, { + "@id" : "https://schema.org/availableService", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical service available from this provider." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1043" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/availableService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "availableService" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1047" + } ] +}, { + "@id" : "https://schema.org/availableStrength", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An available dosage strength for the drug." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1054" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/availableStrength" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "availableStrength" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1056" + } ] +}, { + "@id" : "https://schema.org/availableTest", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A diagnostic test or procedure offered by this lab." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1061" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/availableTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "availableTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1063" + } ] +}, { + "@id" : "https://schema.org/availableThrough", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "After this date, the item will no longer be available for pickup." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1068" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/availableThrough" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "availableThrough" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1070" + } ] +}, { + "@id" : "https://schema.org/award", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An award won by or for this item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1072" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/award" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "award" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1078" + } ] +}, { + "@id" : "https://schema.org/awards", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Awards won by or for this item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1082" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/awards" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "awards" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1087" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/award" + } ] +}, { + "@id" : "https://schema.org/awayTeam", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The away team in a sports event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1091" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/awayTeam" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "awayTeam" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1093" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/competitor" + } ] +}, { + "@id" : "https://schema.org/backstory", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For an Article, typically a NewsArticle, the backstory property provides a textual summary giving a brief explanation of why and how an article was created. In a journalistic setting this could include information about reporting process, methods, interviews, data sources, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1099" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/backstory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "backstory" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1101" + } ] +}, { + "@id" : "https://schema.org/bankAccountType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of a bank account." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1106" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/bankAccountType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "bankAccountType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1108" + } ] +}, { + "@id" : "https://schema.org/baseSalary", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The base salary of the job or of an employee in an EmployeeRole." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1112" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/baseSalary" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "baseSalary" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1115" + } ] +}, { + "@id" : "https://schema.org/bccRecipient", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of recipient. The recipient blind copied on a message." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1122" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/bccRecipient" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "bccRecipient" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1124" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/recipient" + } ] +}, { + "@id" : "https://schema.org/bed", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of bed or beds included in the accommodation. For the single case of just one bed of a certain type, you use bed directly with a text.\n If you want to indicate the quantity of a certain kind of bed, use an instance of BedDetails. For more detailed information, use the amenityFeature property." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1131" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/bed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "bed" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1135" + } ] +}, { + "@id" : "https://schema.org/beforeMedia", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A media object representing the circumstances before performing this direction." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1141" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/beforeMedia" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "beforeMedia" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1143" + } ] +}, { + "@id" : "https://schema.org/beneficiaryBank", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A bank or bank’s branch, financial institution or international financial institution operating the beneficiary’s bank account or releasing funds for the beneficiary." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1148" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/beneficiaryBank" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "beneficiaryBank" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1150" + } ] +}, { + "@id" : "https://schema.org/benefits", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Description of benefits associated with the job." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1155" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/benefits" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "benefits" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1157" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/jobBenefits" + } ] +}, { + "@id" : "https://schema.org/benefitsSummaryUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The URL that goes directly to the summary of benefits and coverage for the specific standard plan or plan variation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1161" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/benefitsSummaryUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "benefitsSummaryUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1163" + } ] +}, { + "@id" : "https://schema.org/bestRating", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The highest value allowed in this rating system. If bestRating is omitted, 5 is assumed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1167" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/bestRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "bestRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1169" + } ] +}, { + "@id" : "https://schema.org/billingAddress", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The billing address for the order." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1174" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/billingAddress" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "billingAddress" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1176" + } ] +}, { + "@id" : "https://schema.org/billingDuration", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies for how long this price (or price component) will be billed. Can be used, for example, to model the contractual duration of a subscription or payment plan. Type can be either a Duration or a Number (in which case the unit of measurement, for example month, is specified by the unitCode property)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1181" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/billingDuration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "billingDuration" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1183" + } ] +}, { + "@id" : "https://schema.org/billingIncrement", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This property specifies the minimal quantity and rounding increment that will be the basis for the billing. The unit of measurement is specified by the unitCode property." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1190" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/billingIncrement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "billingIncrement" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1192" + } ] +}, { + "@id" : "https://schema.org/billingPeriod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The time interval used to compute the invoice." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1194" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/billingPeriod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "billingPeriod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1196" + } ] +}, { + "@id" : "https://schema.org/billingStart", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies after how much time this price (or price component) becomes valid and billing starts. Can be used, for example, to model a price increase after the first year of a subscription. The unit of measurement is specified by the unitCode property." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1201" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/billingStart" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "billingStart" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1203" + } ] +}, { + "@id" : "https://schema.org/bioChemInteraction", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A BioChemEntity that is known to interact with this item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1205" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/bioChemInteraction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "bioChemInteraction" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1207" + } ] +}, { + "@id" : "https://schema.org/bioChemSimilarity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A similar BioChemEntity, e.g., obtained by fingerprint similarity algorithms." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1212" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/bioChemSimilarity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "bioChemSimilarity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1214" + } ] +}, { + "@id" : "https://schema.org/biologicalRole", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A role played by the BioChemEntity within a biological context." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1219" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/biologicalRole" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "biologicalRole" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1221" + } ] +}, { + "@id" : "https://schema.org/biomechnicalClass", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The biomechanical properties of the bone." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1226" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/biomechnicalClass" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "biomechnicalClass" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1228" + } ] +}, { + "@id" : "https://schema.org/birthDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Date of birth." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1232" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/birthDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "birthDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1234" + } ] +}, { + "@id" : "https://schema.org/birthPlace", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The place where the person was born." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1236" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/birthPlace" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "birthPlace" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1238" + } ] +}, { + "@id" : "https://schema.org/bitrate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The bitrate of the media object." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1243" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/bitrate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "bitrate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1245" + } ] +}, { + "@id" : "https://schema.org/blogPost", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A posting that is part of this blog." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1249" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/blogPost" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "blogPost" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1251" + } ] +}, { + "@id" : "https://schema.org/blogPosts", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a post that is part of a Blog. Note that historically, what we term a \"Blog\" was once known as a \"weblog\", and that what we term a \"BlogPosting\" is now often colloquially referred to as a \"blog\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1256" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/blogPosts" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "blogPosts" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1258" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/blogPost" + } ] +}, { + "@id" : "https://schema.org/bloodSupply", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The blood vessel that carries blood from the heart to the muscle." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1263" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/bloodSupply" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "bloodSupply" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1265" + } ] +}, { + "@id" : "https://schema.org/boardingGroup", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The airline-specific indicator of boarding order / preference." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1270" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/boardingGroup" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "boardingGroup" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1272" + } ] +}, { + "@id" : "https://schema.org/boardingPolicy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of boarding policy used by the airline (e.g. zone-based or group-based)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1276" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/boardingPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "boardingPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1279" + } ] +}, { + "@id" : "https://schema.org/bodyLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Location in the body of the anatomical structure." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1284" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/bodyLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "bodyLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1287" + } ] +}, { + "@id" : "https://schema.org/bodyType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the design and body style of the vehicle (e.g. station wagon, hatchback, etc.)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1291" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/bodyType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "bodyType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1293" + } ] +}, { + "@id" : "https://schema.org/bookEdition", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The edition of the book." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1298" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/bookEdition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "bookEdition" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1300" + } ] +}, { + "@id" : "https://schema.org/bookFormat", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The format of the book." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1304" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/bookFormat" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "bookFormat" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1306" + } ] +}, { + "@id" : "https://schema.org/bookingAgent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "'bookingAgent' is an out-dated term indicating a 'broker' that serves as a booking agent." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1311" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/bookingAgent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "bookingAgent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1313" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/broker" + } ] +}, { + "@id" : "https://schema.org/bookingTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date and time the reservation was booked." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1319" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/bookingTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "bookingTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1321" + } ] +}, { + "@id" : "https://schema.org/borrower", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of participant. The person that borrows the object being lent." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1323" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/borrower" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "borrower" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1325" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/participant" + } ] +}, { + "@id" : "https://schema.org/box", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A box is the area enclosed by the rectangle formed by two points. The first point is the lower corner, the second point is the upper corner. A box is expressed as two points separated by a space character." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1330" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/box" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "box" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1332" + } ] +}, { + "@id" : "https://schema.org/branch", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The branches that delineate from the nerve bundle. Not to be confused with branchOf." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1336" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/branch" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "branch" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1338" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/arterialBranch" + } ] +}, { + "@id" : "https://schema.org/branchCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A short textual code (also called \"store code\") that uniquely identifies a place of business. The code is typically assigned by the parentOrganization and used in structured URLs.

\n\nFor example, in the URL http://www.starbucks.co.uk/store-locator/etc/detail/3047 the code \"3047\" is a branchCode for a particular branch." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1343" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/branchCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "branchCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1345" + } ] +}, { + "@id" : "https://schema.org/branchOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The larger organization that this local business is a branch of, if any. Not to be confused with (anatomical) branch." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1349" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/branchOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "branchOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1351" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/parentOrganization" + } ] +}, { + "@id" : "https://schema.org/brand", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The brand(s) associated with a product or service, or the brand(s) maintained by an organization or business person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1356" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/brand" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "brand" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1361" + } ] +}, { + "@id" : "https://schema.org/breadcrumb", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A set of links that can help a user understand and navigate a website hierarchy." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1367" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/breadcrumb" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "breadcrumb" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1369" + } ] +}, { + "@id" : "https://schema.org/breastfeedingWarning", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any precaution, guidance, contraindication, etc. related to this drug's use by breastfeeding mothers." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1374" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/breastfeedingWarning" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "breastfeedingWarning" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1376" + } ] +}, { + "@id" : "https://schema.org/broadcastAffiliateOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The media network(s) whose content is broadcast on this station." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1380" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/broadcastAffiliateOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "broadcastAffiliateOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1382" + } ] +}, { + "@id" : "https://schema.org/broadcastChannelId", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The unique address by which the BroadcastService can be identified in a provider lineup. In US, this is typically a number." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1387" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/broadcastChannelId" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "broadcastChannelId" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1389" + } ] +}, { + "@id" : "https://schema.org/broadcastDisplayName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The name displayed in the channel guide. For many US affiliates, it is the network name." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1393" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/broadcastDisplayName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "broadcastDisplayName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1395" + } ] +}, { + "@id" : "https://schema.org/broadcastFrequency", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The frequency used for over-the-air broadcasts. Numeric values or simple ranges, e.g. 87-99. In addition a shortcut idiom is supported for frequences of AM and FM radio channels, e.g. \"87 FM\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1399" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/broadcastFrequency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "broadcastFrequency" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1402" + } ] +}, { + "@id" : "https://schema.org/broadcastFrequencyValue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The frequency in MHz for a particular broadcast." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1407" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/broadcastFrequencyValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "broadcastFrequencyValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1409" + } ] +}, { + "@id" : "https://schema.org/broadcastOfEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The event being broadcast such as a sporting event or awards ceremony." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1415" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/broadcastOfEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "broadcastOfEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1417" + } ] +}, { + "@id" : "https://schema.org/broadcastServiceTier", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of service required to have access to the channel (e.g. Standard or Premium)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1422" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/broadcastServiceTier" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "broadcastServiceTier" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1424" + } ] +}, { + "@id" : "https://schema.org/broadcastSignalModulation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The modulation (e.g. FM, AM, etc) used by a particular broadcast service." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1428" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/broadcastSignalModulation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "broadcastSignalModulation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1430" + } ] +}, { + "@id" : "https://schema.org/broadcastSubChannel", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The subchannel used for the broadcast." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1435" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/broadcastSubChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "broadcastSubChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1437" + } ] +}, { + "@id" : "https://schema.org/broadcastTimezone", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The timezone in ISO 8601 format for which the service bases its broadcasts." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1441" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/broadcastTimezone" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "broadcastTimezone" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1443" + } ] +}, { + "@id" : "https://schema.org/broadcaster", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The organization owning or operating the broadcast service." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1447" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/broadcaster" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "broadcaster" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1449" + } ] +}, { + "@id" : "https://schema.org/broker", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An entity that arranges for an exchange between a buyer and a seller. In most cases a broker never acquires or releases ownership of a product or service involved in an exchange. If it is not clear whether an entity is a broker, seller, or buyer, the latter two terms are preferred." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1454" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/broker" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "broker" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1459" + } ] +}, { + "@id" : "https://schema.org/browserRequirements", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies browser requirements in human-readable text. For example, 'requires HTML5 support'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1465" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/browserRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "browserRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1467" + } ] +}, { + "@id" : "https://schema.org/busName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The name of the bus (e.g. Bolt Express)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1471" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/busName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "busName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1473" + } ] +}, { + "@id" : "https://schema.org/busNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The unique identifier for the bus." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1477" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/busNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "busNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1479" + } ] +}, { + "@id" : "https://schema.org/businessDays", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Days of the week when the merchant typically operates, indicated via opening hours markup." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1483" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/businessDays" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "businessDays" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1485" + } ] +}, { + "@id" : "https://schema.org/businessFunction", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The business function (e.g. sell, lease, repair, dispose) of the offer or component of a bundle (TypeAndQuantityNode). The default is http://purl.org/goodrelations/v1#Sell." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1490" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/businessFunction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "businessFunction" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1494" + } ] +}, { + "@id" : "https://schema.org/buyer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of participant. The participant/person/organization that bought the object." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1499" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/buyer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "buyer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1501" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/participant" + } ] +}, { + "@id" : "https://schema.org/byArtist", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The artist that performed this album or recording." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1507" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/byArtist" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "byArtist" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1510" + } ] +}, { + "@id" : "https://schema.org/byDay", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Defines the day(s) of the week on which a recurring Event takes place. May be specified using either DayOfWeek, or alternatively Text conforming to iCal's syntax for byDay recurrence rules." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1516" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/byDay" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "byDay" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1518" + } ] +}, { + "@id" : "https://schema.org/byMonth", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Defines the month(s) of the year on which a recurring Event takes place. Specified as an Integer between 1-12. January is 1." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1523" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/byMonth" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "byMonth" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1525" + } ] +}, { + "@id" : "https://schema.org/byMonthDay", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Defines the day(s) of the month on which a recurring Event takes place. Specified as an Integer between 1-31." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1527" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/byMonthDay" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "byMonthDay" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1529" + } ] +}, { + "@id" : "https://schema.org/byMonthWeek", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Defines the week(s) of the month on which a recurring Event takes place. Specified as an Integer between 1-5. For clarity, byMonthWeek is best used in conjunction with byDay to indicate concepts like the first and third Mondays of a month." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1531" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/byMonthWeek" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "byMonthWeek" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1533" + } ] +}, { + "@id" : "https://schema.org/callSign", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A callsign, as used in broadcasting and radio communications to identify people, radio and TV stations, or vehicles." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1535" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/callSign" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "callSign" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1539" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/calories", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of calories." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1543" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/calories" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "calories" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1545" + } ] +}, { + "@id" : "https://schema.org/candidate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of object. The candidate subject of this action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1550" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/candidate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "candidate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1552" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/object" + } ] +}, { + "@id" : "https://schema.org/caption", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The caption for this object. For downloadable machine formats (closed caption, subtitles etc.) use MediaObject and indicate the encodingFormat." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1557" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/caption" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "caption" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1561" + } ] +}, { + "@id" : "https://schema.org/carbohydrateContent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of grams of carbohydrates." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1566" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/carbohydrateContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "carbohydrateContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1568" + } ] +}, { + "@id" : "https://schema.org/cargoVolume", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The available volume for cargo or luggage. For automobiles, this is usually the trunk volume.

\n\nTypical unit code(s): LTR for liters, FTQ for cubic foot/feet

\n\nNote: You can use minValue and maxValue to indicate ranges." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1573" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/cargoVolume" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cargoVolume" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1575" + } ] +}, { + "@id" : "https://schema.org/carrier", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "'carrier' is an out-dated term indicating the 'provider' for parcel delivery and flights." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1580" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/carrier" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "carrier" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1583" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/provider" + } ] +}, { + "@id" : "https://schema.org/carrierRequirements", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies specific carrier(s) requirements for the application (e.g. an application may only work on a specific carrier network)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1588" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/carrierRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "carrierRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1590" + } ] +}, { + "@id" : "https://schema.org/cashBack", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A cardholder benefit that pays the cardholder a small percentage of their net expenditures." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1594" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cashBack" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cashBack" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1596" + } ] +}, { + "@id" : "https://schema.org/catalog", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A data catalog which contains this dataset." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1599" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/catalog" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "catalog" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1601" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/includedInDataCatalog" + } ] +}, { + "@id" : "https://schema.org/catalogNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The catalog number for the release." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1606" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/catalogNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "catalogNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1608" + } ] +}, { + "@id" : "https://schema.org/category", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A category for the item. Greater signs or slashes can be used to informally indicate a category hierarchy." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1612" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/category" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "category" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1621" + } ] +}, { + "@id" : "https://schema.org/causeOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The condition, complication, symptom, sign, etc. caused." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1628" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/causeOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "causeOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1630" + } ] +}, { + "@id" : "https://schema.org/ccRecipient", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of recipient. The recipient copied on a message." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1635" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ccRecipient" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ccRecipient" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1637" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/recipient" + } ] +}, { + "@id" : "https://schema.org/certificationIdentification", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Identifier of a certification instance (as registered with an independent certification body). Typically this identifier can be used to consult and verify the certification instance. See also gs1:certificationIdentification." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1644" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/certificationIdentification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "certificationIdentification" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1646" + } ] +}, { + "@id" : "https://schema.org/certificationStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the current status of a certification: active or inactive. See also gs1:certificationStatus." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1651" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/certificationStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "certificationStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1653" + } ] +}, { + "@id" : "https://schema.org/character", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Fictional person connected with a creative work." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1658" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/character" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "character" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1660" + } ] +}, { + "@id" : "https://schema.org/characterAttribute", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A piece of data that represents a particular aspect of a fictional character (skill, power, character points, advantage, disadvantage)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1665" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/characterAttribute" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "characterAttribute" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1668" + } ] +}, { + "@id" : "https://schema.org/characterName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The name of a character played in some acting or performing role, i.e. in a PerformanceRole." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1673" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/characterName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "characterName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1675" + } ] +}, { + "@id" : "https://schema.org/cheatCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Cheat codes to the game." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1679" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/cheatCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cheatCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1682" + } ] +}, { + "@id" : "https://schema.org/checkinTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The earliest someone may check into a lodging establishment." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1687" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/checkinTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "checkinTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1690" + } ] +}, { + "@id" : "https://schema.org/checkoutPageURLTemplate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A URL template (RFC 6570) for a checkout page for an offer. This approach allows merchants to specify a URL for online checkout of the offered product, by interpolating parameters such as the logged in user ID, product ID, quantity, discount code etc. Parameter naming and standardization are not specified here." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1693" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/checkoutPageURLTemplate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "checkoutPageURLTemplate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1695" + } ] +}, { + "@id" : "https://schema.org/checkoutTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The latest someone may check out of a lodging establishment." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1699" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/checkoutTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "checkoutTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1702" + } ] +}, { + "@id" : "https://schema.org/chemicalComposition", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The chemical composition describes the identity and relative ratio of the chemical elements that make up the substance." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1705" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/chemicalComposition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "chemicalComposition" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1707" + } ] +}, { + "@id" : "https://schema.org/chemicalRole", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A role played by the BioChemEntity within a chemical context." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1711" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/chemicalRole" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "chemicalRole" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1714" + } ] +}, { + "@id" : "https://schema.org/childMaxAge", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Maximal age of the child." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1719" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/childMaxAge" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "childMaxAge" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1721" + } ] +}, { + "@id" : "https://schema.org/childMinAge", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Minimal age of the child." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1723" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/childMinAge" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "childMinAge" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1725" + } ] +}, { + "@id" : "https://schema.org/childTaxon", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Closest child taxa of the taxon in question." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1727" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/childTaxon" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "childTaxon" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1729" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/parentTaxon" + } ] +}, { + "@id" : "https://schema.org/children", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A child of the person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1734" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/children" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "children" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1736" + } ] +}, { + "@id" : "https://schema.org/cholesterolContent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of milligrams of cholesterol." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1741" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/cholesterolContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cholesterolContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1743" + } ] +}, { + "@id" : "https://schema.org/circle", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A circle is the circular region of a specified radius centered at a specified latitude and longitude. A circle is expressed as a pair followed by a radius in meters." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1748" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/circle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "circle" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1750" + } ] +}, { + "@id" : "https://schema.org/citation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A citation or reference to another creative work, such as another publication, web page, scholarly article, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1754" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/citation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "citation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1756" + } ] +}, { + "@id" : "https://schema.org/claimInterpreter", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For a Claim interpreted from MediaObject content\n sed to indicate a claim contained, implied or refined from the content of a MediaObject." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1761" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/claimInterpreter" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "claimInterpreter" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1763" + } ] +}, { + "@id" : "https://schema.org/claimReviewed", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A short summary of the specific claims reviewed in a ClaimReview." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1769" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/claimReviewed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "claimReviewed" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1771" + } ] +}, { + "@id" : "https://schema.org/clincalPharmacology", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Description of the absorption and elimination of drugs, including their concentration (pharmacokinetics, pK) and biological effects (pharmacodynamics, pD)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1775" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/clincalPharmacology" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "clincalPharmacology" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1777" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/clinicalPharmacology" + } ] +}, { + "@id" : "https://schema.org/clinicalPharmacology", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Description of the absorption and elimination of drugs, including their concentration (pharmacokinetics, pK) and biological effects (pharmacodynamics, pD)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1781" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/clinicalPharmacology" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "clinicalPharmacology" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1783" + } ] +}, { + "@id" : "https://schema.org/clipNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Position of the clip within an ordered group of clips." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1787" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/clipNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "clipNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1789" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/position" + } ] +}, { + "@id" : "https://schema.org/closes", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The closing hour of the place or service on the given day(s) of the week." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1794" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/closes" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "closes" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1796" + } ] +}, { + "@id" : "https://schema.org/coach", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A person that acts in a coaching role for a sports team." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1798" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/coach" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "coach" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1800" + } ] +}, { + "@id" : "https://schema.org/code", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical code for the entity, taken from a controlled vocabulary or ontology such as ICD-9, DiseasesDB, MeSH, SNOMED-CT, RxNorm, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1805" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/code" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "code" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1807" + } ] +}, { + "@id" : "https://schema.org/codeRepository", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Link to the repository where the un-compiled, human readable code and related code is located (SVN, GitHub, CodePlex)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1812" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/codeRepository" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "codeRepository" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1814" + } ] +}, { + "@id" : "https://schema.org/codeSampleType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "What type of code sample: full (compile ready) solution, code snippet, inline code, scripts, template." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1818" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/codeSampleType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "codeSampleType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1820" + } ] +}, { + "@id" : "https://schema.org/codeValue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A short textual code that uniquely identifies the value." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1824" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/codeValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "codeValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1827" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/termCode" + } ] +}, { + "@id" : "https://schema.org/codingSystem", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The coding system, e.g. 'ICD-10'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1831" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/codingSystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "codingSystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1833" + } ] +}, { + "@id" : "https://schema.org/colleague", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A colleague of the person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1837" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/colleague" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "colleague" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1839" + } ] +}, { + "@id" : "https://schema.org/colleagues", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A colleague of the person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1844" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/colleagues" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "colleagues" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1846" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/colleague" + } ] +}, { + "@id" : "https://schema.org/collection", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of object. The collection target of the action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1851" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/collection" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "collection" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1853" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/object" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/targetCollection" + } ] +}, { + "@id" : "https://schema.org/collectionSize", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of items in the Collection." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1858" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/collectionSize" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "collectionSize" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1860" + } ] +}, { + "@id" : "https://schema.org/color", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The color of the product." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1862" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/color" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "color" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1864" + } ] +}, { + "@id" : "https://schema.org/colorSwatch", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A color swatch image, visualizing the color of a Product. Should match the textual description specified in the color property. This can be a URL or a fully described ImageObject." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1868" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/colorSwatch" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "colorSwatch" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1870" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/image" + } ] +}, { + "@id" : "https://schema.org/colorist", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The individual who adds color to inked drawings." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1875" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/colorist" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "colorist" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1879" + } ] +}, { + "@id" : "https://schema.org/comment", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Comments, typically from users." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1884" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/comment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "comment" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1887" + } ] +}, { + "@id" : "https://schema.org/commentCount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of comments this CreativeWork (e.g. Article, Question or Answer) has received. This is most applicable to works published in Web sites with commenting system; additional comments may exist elsewhere." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1892" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/commentCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "commentCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1894" + } ] +}, { + "@id" : "https://schema.org/commentText", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The text of the UserComment." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1896" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/commentText" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "commentText" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1898" + } ] +}, { + "@id" : "https://schema.org/commentTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The time at which the UserComment was made." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1902" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/commentTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "commentTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1904" + } ] +}, { + "@id" : "https://schema.org/competencyRequired", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Knowledge, skill, ability or personal attribute that must be demonstrated by a person or other entity in order to do something such as earn an Educational Occupational Credential or understand a LearningResource." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1907" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/competencyRequired" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "competencyRequired" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1910" + } ] +}, { + "@id" : "https://schema.org/competitor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A competitor in a sports event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1915" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/competitor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "competitor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1917" + } ] +}, { + "@id" : "https://schema.org/composer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The person or organization who wrote a composition, or who is the composer of a work performed at some event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1923" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/composer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "composer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1926" + } ] +}, { + "@id" : "https://schema.org/comprisedOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifying something physically contained by something else. Typically used here for the underlying anatomical structures, such as organs, that comprise the anatomical system." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1932" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/comprisedOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "comprisedOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1934" + } ] +}, { + "@id" : "https://schema.org/conditionsOfAccess", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Conditions that affect the availability of, or method(s) of access to, an item. Typically used for real world items such as an ArchiveComponent held by an ArchiveOrganization. This property is not suitable for use as a general Web access control mechanism. It is expressed only in natural language.

\n\nFor example \"Available by appointment from the Reading Room\" or \"Accessible only from logged-in accounts \"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1940" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/conditionsOfAccess" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "conditionsOfAccess" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1942" + } ] +}, { + "@id" : "https://schema.org/confirmationNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A number that confirms the given order or payment has been received." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1946" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/confirmationNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "confirmationNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1949" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/connectedTo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Other anatomical structures to which this structure is connected." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1953" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/connectedTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "connectedTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1955" + } ] +}, { + "@id" : "https://schema.org/constraintProperty", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a property used as a constraint. For example, in the definition of a StatisticalVariable. The value is a property, either from within Schema.org or from other compatible (e.g. RDF) systems such as DataCommons.org or Wikidata.org." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1960" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/constraintProperty" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "constraintProperty" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1962" + } ] +}, { + "@id" : "https://schema.org/contactOption", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An option available on this contact point (e.g. a toll-free number or support for hearing-impaired callers)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1967" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/contactOption" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "contactOption" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1969" + } ] +}, { + "@id" : "https://schema.org/contactPoint", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A contact point for a person or organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1974" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/contactPoint" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "contactPoint" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1978" + } ] +}, { + "@id" : "https://schema.org/contactPoints", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A contact point for a person or organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1983" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/contactPoints" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "contactPoints" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1986" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/contactPoint" + } ] +}, { + "@id" : "https://schema.org/contactType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A person or organization can have different contact points, for different purposes. For example, a sales contact point, a PR contact point and so on. This property is used to specify the kind of contact point." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1991" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/contactType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "contactType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1993" + } ] +}, { + "@id" : "https://schema.org/contactlessPayment", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A secure method for consumers to purchase products or services via debit, credit or smartcards by using RFID or NFC technology." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid1997" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/contactlessPayment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "contactlessPayment" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid1999" + } ] +}, { + "@id" : "https://schema.org/containedIn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The basic containment relation between a place and one that contains it." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2001" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/containedIn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "containedIn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2003" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/containedInPlace" + } ] +}, { + "@id" : "https://schema.org/containedInPlace", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The basic containment relation between a place and one that contains it." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2008" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/containedInPlace" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "containedInPlace" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2010" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/containsPlace" + } ] +}, { + "@id" : "https://schema.org/containsPlace", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The basic containment relation between a place and another that it contains." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2015" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/containsPlace" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "containsPlace" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2017" + } ] +}, { + "@id" : "https://schema.org/containsSeason", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A season that is part of the media series." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2022" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/containsSeason" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "containsSeason" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2026" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/hasPart" + } ] +}, { + "@id" : "https://schema.org/contentLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The location depicted or described in the content. For example, the location in a photograph or painting." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2031" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/contentLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "contentLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2033" + } ] +}, { + "@id" : "https://schema.org/contentRating", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Official rating of a piece of content—for example, 'MPAA PG-13'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2038" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/contentRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "contentRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2040" + } ] +}, { + "@id" : "https://schema.org/contentReferenceTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The specific time described by a creative work, for works (e.g. articles, video objects etc.) that emphasise a particular moment within an Event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2045" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/contentReferenceTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "contentReferenceTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2047" + } ] +}, { + "@id" : "https://schema.org/contentSize", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "File size in (mega/kilo)bytes." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2049" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/contentSize" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "contentSize" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2051" + } ] +}, { + "@id" : "https://schema.org/contentType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The supported content type(s) for an EntryPoint response." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2055" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/contentType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "contentType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2057" + } ] +}, { + "@id" : "https://schema.org/contentUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Actual bytes of the media object, for example the image file or video file." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2061" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/contentUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "contentUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2063" + } ] +}, { + "@id" : "https://schema.org/contraindication", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A contraindication for this therapy." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2067" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/contraindication" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "contraindication" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2070" + } ] +}, { + "@id" : "https://schema.org/contributor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A secondary contributor to the CreativeWork or Event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2075" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/contributor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "contributor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2078" + } ] +}, { + "@id" : "https://schema.org/cookTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The time it takes to actually cook the dish, in ISO 8601 duration format." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2084" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/cookTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cookTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2086" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/performTime" + } ] +}, { + "@id" : "https://schema.org/cookingMethod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The method of cooking, such as Frying, Steaming, ..." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2091" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/cookingMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cookingMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2093" + } ] +}, { + "@id" : "https://schema.org/copyrightHolder", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The party holding the legal copyright to the CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2097" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/copyrightHolder" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "copyrightHolder" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2099" + } ] +}, { + "@id" : "https://schema.org/copyrightNotice", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Text of a notice appropriate for describing the copyright aspects of this Creative Work, ideally indicating the owner of the copyright for the Work." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2105" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/copyrightNotice" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "copyrightNotice" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2107" + } ] +}, { + "@id" : "https://schema.org/copyrightYear", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The year during which the claimed copyright for the CreativeWork was first asserted." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2111" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/copyrightYear" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "copyrightYear" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2113" + } ] +}, { + "@id" : "https://schema.org/correction", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a correction to a CreativeWork, either via a CorrectionComment, textually or in another document." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2115" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/correction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "correction" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2117" + } ] +}, { + "@id" : "https://schema.org/correctionsPolicy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For an Organization (e.g. NewsMediaOrganization), a statement describing (in news media, the newsroom’s) disclosure and correction policy for errors." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2122" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/correctionsPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "correctionsPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2125" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/publishingPrinciples" + } ] +}, { + "@id" : "https://schema.org/costCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The category of cost, such as wholesale, retail, reimbursement cap, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2130" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/costCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "costCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2132" + } ] +}, { + "@id" : "https://schema.org/costCurrency", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The currency (in 3-letter) of the drug cost. See: http://en.wikipedia.org/wiki/ISO_4217." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2137" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/costCurrency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "costCurrency" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2139" + } ] +}, { + "@id" : "https://schema.org/costOrigin", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Additional details to capture the origin of the cost data. For example, 'Medicare Part B'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2143" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/costOrigin" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "costOrigin" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2145" + } ] +}, { + "@id" : "https://schema.org/costPerUnit", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The cost per unit of the drug." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2149" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/costPerUnit" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "costPerUnit" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2151" + } ] +}, { + "@id" : "https://schema.org/countriesNotSupported", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Countries for which the application is not supported. You can also provide the two-letter ISO 3166-1 alpha-2 country code." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2157" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/countriesNotSupported" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "countriesNotSupported" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2159" + } ] +}, { + "@id" : "https://schema.org/countriesSupported", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Countries for which the application is supported. You can also provide the two-letter ISO 3166-1 alpha-2 country code." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2163" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/countriesSupported" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "countriesSupported" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2165" + } ] +}, { + "@id" : "https://schema.org/countryOfAssembly", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The place where the product was assembled." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2169" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/countryOfAssembly" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "countryOfAssembly" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2171" + } ] +}, { + "@id" : "https://schema.org/countryOfLastProcessing", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The place where the item (typically Product) was last processed and tested before importation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2175" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/countryOfLastProcessing" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "countryOfLastProcessing" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2177" + } ] +}, { + "@id" : "https://schema.org/countryOfOrigin", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The country of origin of something, including products as well as creative works such as movie and TV content.

\n\nIn the case of TV and movie, this would be the country of the principle offices of the production company or individual responsible for the movie. For other kinds of CreativeWork it is difficult to provide fully general guidance, and properties such as contentLocation and locationCreated may be more applicable.

\n\nIn the case of products, the country of origin of the product. The exact interpretation of this may vary by context and product type, and cannot be fully enumerated here." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2181" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/countryOfOrigin" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "countryOfOrigin" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2188" + } ] +}, { + "@id" : "https://schema.org/course", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of location. The course where this action was taken." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2193" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/course" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "course" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2195" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/location" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/exerciseCourse" + } ] +}, { + "@id" : "https://schema.org/courseCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The identifier for the Course used by the course provider (e.g. CS101 or 6.001)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2200" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/courseCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "courseCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2202" + } ] +}, { + "@id" : "https://schema.org/courseMode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The medium or means of delivery of the course instance or the mode of study, either as a text label (e.g. \"online\", \"onsite\" or \"blended\"; \"synchronous\" or \"asynchronous\"; \"full-time\" or \"part-time\") or as a URL reference to a term from a controlled vocabulary (e.g. https://ceds.ed.gov/element/001311#Asynchronous)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2206" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/courseMode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "courseMode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2208" + } ] +}, { + "@id" : "https://schema.org/coursePrerequisites", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Requirements for taking the Course. May be completion of another Course or a textual description like \"permission of instructor\". Requirements may be a pre-requisite competency, referenced using AlignmentObject." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2212" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/coursePrerequisites" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "coursePrerequisites" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2214" + } ] +}, { + "@id" : "https://schema.org/courseSchedule", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents the length and pace of a course, expressed as a Schedule." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2220" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/courseSchedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "courseSchedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2222" + } ] +}, { + "@id" : "https://schema.org/courseWorkload", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The amount of work expected of students taking the course, often provided as a figure per week or per month, and may be broken down by type. For example, \"2 hours of lectures, 1 hour of lab work and 3 hours of independent study per week\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2227" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/courseWorkload" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "courseWorkload" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2229" + } ] +}, { + "@id" : "https://schema.org/coverageEndTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The time when the live blog will stop covering the Event. Note that coverage may continue after the Event concludes." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2233" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/coverageEndTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "coverageEndTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2235" + } ] +}, { + "@id" : "https://schema.org/coverageStartTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The time when the live blog will begin covering the Event. Note that coverage may begin before the Event's start time. The LiveBlogPosting may also be created before coverage begins." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2237" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/coverageStartTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "coverageStartTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2239" + } ] +}, { + "@id" : "https://schema.org/creativeWorkStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The status of a creative work in terms of its stage in a lifecycle. Example terms include Incomplete, Draft, Published, Obsolete. Some organizations define a set of terms for the stages of their publication lifecycle." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2241" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/creativeWorkStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "creativeWorkStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2243" + } ] +}, { + "@id" : "https://schema.org/creator", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The creator/author of this CreativeWork. This is the same as the Author property for CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2248" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/creator" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "creator" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2251" + } ] +}, { + "@id" : "https://schema.org/credentialCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The category or type of credential being described, for example \"degree”, “certificate”, “badge”, or more specific term." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2257" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/credentialCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "credentialCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2259" + } ] +}, { + "@id" : "https://schema.org/creditText", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Text that can be used to credit person(s) and/or organization(s) associated with a published Creative Work." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2264" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/creditText" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "creditText" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2266" + } ] +}, { + "@id" : "https://schema.org/creditedTo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The group the release is credited to if different than the byArtist. For example, Red and Blue is credited to \"Stefani Germanotta Band\", but by Lady Gaga." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2270" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/creditedTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "creditedTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2272" + } ] +}, { + "@id" : "https://schema.org/cssSelector", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A CSS selector, e.g. of a SpeakableSpecification or WebPageElement. In the latter case, multiple matches within a page can constitute a single conceptual \"Web page element\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2278" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/cssSelector" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cssSelector" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2281" + } ] +}, { + "@id" : "https://schema.org/currenciesAccepted", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The currency accepted.

\n\nUse standard formats: ISO 4217 currency format, e.g. \"USD\"; Ticker symbol for cryptocurrencies, e.g. \"BTC\"; well known names for Local Exchange Trading Systems (LETS) and other currency types, e.g. \"Ithaca HOUR\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2286" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/currenciesAccepted" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "currenciesAccepted" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2288" + } ] +}, { + "@id" : "https://schema.org/currency", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The currency in which the monetary amount is expressed.

\n\nUse standard formats: ISO 4217 currency format, e.g. \"USD\"; Ticker symbol for cryptocurrencies, e.g. \"BTC\"; well known names for Local Exchange Trading Systems (LETS) and other currency types, e.g. \"Ithaca HOUR\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2292" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/currency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "currency" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2298" + } ] +}, { + "@id" : "https://schema.org/currentExchangeRate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The current price of a currency." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2302" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/currentExchangeRate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "currentExchangeRate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2304" + } ] +}, { + "@id" : "https://schema.org/customer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Party placing the order or paying the invoice." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2309" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/customer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "customer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2312" + } ] +}, { + "@id" : "https://schema.org/customerRemorseReturnFees", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of return fees if the product is returned due to customer remorse." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2318" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/customerRemorseReturnFees" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "customerRemorseReturnFees" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2320" + } ] +}, { + "@id" : "https://schema.org/customerRemorseReturnLabelSource", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The method (from an enumeration) by which the customer obtains a return shipping label for a product returned due to customer remorse." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2325" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/customerRemorseReturnLabelSource" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "customerRemorseReturnLabelSource" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2327" + } ] +}, { + "@id" : "https://schema.org/customerRemorseReturnShippingFeesAmount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The amount of shipping costs if a product is returned due to customer remorse. Applicable when property customerRemorseReturnFees equals ReturnShippingFees." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2332" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/customerRemorseReturnShippingFeesAmount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "customerRemorseReturnShippingFeesAmount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2334" + } ] +}, { + "@id" : "https://schema.org/cutoffTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Order cutoff time allows merchants to describe the time after which they will no longer process orders received on that day. For orders processed after cutoff time, one day gets added to the delivery time estimate. This property is expected to be most typically used via the ShippingRateSettings publication pattern. The time is indicated using the ISO-8601 Time format, e.g. \"23:30:00-05:00\" would represent 6:30 pm Eastern Standard Time (EST) which is 5 hours behind Coordinated Universal Time (UTC)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2339" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cutoffTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cutoffTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2341" + } ] +}, { + "@id" : "https://schema.org/cvdCollectionDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "collectiondate - Date for which patient counts are reported." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2343" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdCollectionDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdCollectionDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2345" + } ] +}, { + "@id" : "https://schema.org/cvdFacilityCounty", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Name of the County of the NHSN facility that this data record applies to. Use cvdFacilityId to identify the facility. To provide other details, healthcareReportingData can be used on a Hospital entry." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2350" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdFacilityCounty" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdFacilityCounty" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2352" + } ] +}, { + "@id" : "https://schema.org/cvdFacilityId", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Identifier of the NHSN facility that this data record applies to. Use cvdFacilityCounty to indicate the county. To provide other details, healthcareReportingData can be used on a Hospital entry." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2356" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdFacilityId" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdFacilityId" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2358" + } ] +}, { + "@id" : "https://schema.org/cvdNumBeds", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "numbeds - HOSPITAL INPATIENT BEDS: Inpatient beds, including all staffed, licensed, and overflow (surge) beds used for inpatients." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2362" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdNumBeds" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdNumBeds" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2364" + } ] +}, { + "@id" : "https://schema.org/cvdNumBedsOcc", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "numbedsocc - HOSPITAL INPATIENT BED OCCUPANCY: Total number of staffed inpatient beds that are occupied." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2366" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdNumBedsOcc" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdNumBedsOcc" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2368" + } ] +}, { + "@id" : "https://schema.org/cvdNumC19Died", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "numc19died - DEATHS: Patients with suspected or confirmed COVID-19 who died in the hospital, ED, or any overflow location." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2370" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdNumC19Died" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdNumC19Died" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2372" + } ] +}, { + "@id" : "https://schema.org/cvdNumC19HOPats", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "numc19hopats - HOSPITAL ONSET: Patients hospitalized in an NHSN inpatient care location with onset of suspected or confirmed COVID-19 14 or more days after hospitalization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2374" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdNumC19HOPats" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdNumC19HOPats" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2376" + } ] +}, { + "@id" : "https://schema.org/cvdNumC19HospPats", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "numc19hosppats - HOSPITALIZED: Patients currently hospitalized in an inpatient care location who have suspected or confirmed COVID-19." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2378" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdNumC19HospPats" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdNumC19HospPats" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2380" + } ] +}, { + "@id" : "https://schema.org/cvdNumC19MechVentPats", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "numc19mechventpats - HOSPITALIZED and VENTILATED: Patients hospitalized in an NHSN inpatient care location who have suspected or confirmed COVID-19 and are on a mechanical ventilator." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2382" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdNumC19MechVentPats" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdNumC19MechVentPats" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2384" + } ] +}, { + "@id" : "https://schema.org/cvdNumC19OFMechVentPats", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "numc19ofmechventpats - ED/OVERFLOW and VENTILATED: Patients with suspected or confirmed COVID-19 who are in the ED or any overflow location awaiting an inpatient bed and on a mechanical ventilator." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2386" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdNumC19OFMechVentPats" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdNumC19OFMechVentPats" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2388" + } ] +}, { + "@id" : "https://schema.org/cvdNumC19OverflowPats", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "numc19overflowpats - ED/OVERFLOW: Patients with suspected or confirmed COVID-19 who are in the ED or any overflow location awaiting an inpatient bed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2390" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdNumC19OverflowPats" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdNumC19OverflowPats" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2392" + } ] +}, { + "@id" : "https://schema.org/cvdNumICUBeds", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "numicubeds - ICU BEDS: Total number of staffed inpatient intensive care unit (ICU) beds." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2394" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdNumICUBeds" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdNumICUBeds" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2396" + } ] +}, { + "@id" : "https://schema.org/cvdNumICUBedsOcc", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "numicubedsocc - ICU BED OCCUPANCY: Total number of staffed inpatient ICU beds that are occupied." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2398" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdNumICUBedsOcc" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdNumICUBedsOcc" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2400" + } ] +}, { + "@id" : "https://schema.org/cvdNumTotBeds", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "numtotbeds - ALL HOSPITAL BEDS: Total number of all inpatient and outpatient beds, including all staffed, ICU, licensed, and overflow (surge) beds used for inpatients or outpatients." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2402" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdNumTotBeds" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdNumTotBeds" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2404" + } ] +}, { + "@id" : "https://schema.org/cvdNumVent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "numvent - MECHANICAL VENTILATORS: Total number of ventilators available." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2406" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdNumVent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdNumVent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2408" + } ] +}, { + "@id" : "https://schema.org/cvdNumVentUse", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "numventuse - MECHANICAL VENTILATORS IN USE: Total number of ventilators in use." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2410" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/cvdNumVentUse" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "cvdNumVentUse" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2412" + } ] +}, { + "@id" : "https://schema.org/dataFeedElement", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An item within a data feed. Data feeds may have many elements." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2414" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dataFeedElement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dataFeedElement" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2416" + } ] +}, { + "@id" : "https://schema.org/dataset", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A dataset contained in this catalog." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2422" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dataset" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dataset" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2424" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/includedInDataCatalog" + } ] +}, { + "@id" : "https://schema.org/datasetTimeInterval", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The range of temporal applicability of a dataset, e.g. for a 2011 census dataset, the year 2011 (in ISO 8601 time interval format)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2429" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/datasetTimeInterval" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "datasetTimeInterval" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2431" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/temporalCoverage" + } ] +}, { + "@id" : "https://schema.org/dateCreated", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date on which the CreativeWork was created or the item was added to a DataFeed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2433" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dateCreated" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dateCreated" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2436" + } ] +}, { + "@id" : "https://schema.org/dateDeleted", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The datetime the item was removed from the DataFeed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2439" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dateDeleted" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dateDeleted" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2441" + } ] +}, { + "@id" : "https://schema.org/dateIssued", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date the ticket was issued." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2444" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dateIssued" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dateIssued" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2446" + } ] +}, { + "@id" : "https://schema.org/dateModified", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date on which the CreativeWork was most recently modified or when the item's entry was modified within a DataFeed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2449" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dateModified" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dateModified" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2452" + } ] +}, { + "@id" : "https://schema.org/datePosted", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Publication date of an online listing." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2455" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/datePosted" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "datePosted" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2460" + } ] +}, { + "@id" : "https://schema.org/datePublished", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Date of first publication or broadcast. For example the date a CreativeWork was broadcast or a Certification was issued." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2463" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/datePublished" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "datePublished" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2466" + } ] +}, { + "@id" : "https://schema.org/dateRead", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date/time at which the message has been read by the recipient if a single recipient exists." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2469" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dateRead" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dateRead" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2471" + } ] +}, { + "@id" : "https://schema.org/dateReceived", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date/time the message was received if a single recipient exists." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2474" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dateReceived" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dateReceived" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2476" + } ] +}, { + "@id" : "https://schema.org/dateSent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date/time at which the message was sent." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2478" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dateSent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dateSent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2480" + } ] +}, { + "@id" : "https://schema.org/dateVehicleFirstRegistered", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date of the first registration of the vehicle with the respective public authorities." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2482" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dateVehicleFirstRegistered" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dateVehicleFirstRegistered" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2484" + } ] +}, { + "@id" : "https://schema.org/dateline", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A dateline is a brief piece of text included in news articles that describes where and when the story was written or filed though the date is often omitted. Sometimes only a placename is provided.

\n\nStructured representations of dateline-related information can also be expressed more explicitly using locationCreated (which represents where a work was created, e.g. where a news report was written). For location depicted or described in the content, use contentLocation.

\n\nDateline summaries are oriented more towards human readers than towards automated processing, and can vary substantially. Some examples: \"BEIRUT, Lebanon, June 2.\", \"Paris, France\", \"December 19, 2017 11:43AM Reporting from Washington\", \"Beijing/Moscow\", \"QUEZON CITY, Philippines\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2486" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dateline" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dateline" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2488" + } ] +}, { + "@id" : "https://schema.org/dayOfWeek", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The day of the week for which these opening hours are valid." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2492" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dayOfWeek" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dayOfWeek" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2495" + } ] +}, { + "@id" : "https://schema.org/deathDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Date of death." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2500" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/deathDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "deathDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2502" + } ] +}, { + "@id" : "https://schema.org/deathPlace", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The place where the person died." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2504" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/deathPlace" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "deathPlace" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2506" + } ] +}, { + "@id" : "https://schema.org/defaultValue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The default value of the input. For properties that expect a literal, the default is a literal value, for properties that expect an object, it's an ID reference to one of the current values." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2511" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/defaultValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "defaultValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2513" + } ] +}, { + "@id" : "https://schema.org/deliveryAddress", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Destination address." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2518" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/deliveryAddress" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "deliveryAddress" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2520" + } ] +}, { + "@id" : "https://schema.org/deliveryLeadTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The typical delay between the receipt of the order and the goods either leaving the warehouse or being prepared for pickup, in case the delivery method is on site pickup." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2525" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/deliveryLeadTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "deliveryLeadTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2528" + } ] +}, { + "@id" : "https://schema.org/deliveryMethod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of instrument. The method of delivery." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2533" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/deliveryMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "deliveryMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2538" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/instrument" + } ] +}, { + "@id" : "https://schema.org/deliveryStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "New entry added as the package passes through each leg of its journey (from shipment to final delivery)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2543" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/deliveryStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "deliveryStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2545" + } ] +}, { + "@id" : "https://schema.org/deliveryTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The total delay between the receipt of the order and the goods reaching the final customer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2550" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/deliveryTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "deliveryTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2553" + } ] +}, { + "@id" : "https://schema.org/department", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A relationship between an organization and a department of that organization, also described as an organization (allowing different urls, logos, opening hours). For example: a store with a pharmacy, or a bakery with a cafe." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2558" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/department" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "department" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2560" + } ] +}, { + "@id" : "https://schema.org/departureAirport", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The airport where the flight originates." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2565" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/departureAirport" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "departureAirport" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2567" + } ] +}, { + "@id" : "https://schema.org/departureBoatTerminal", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The terminal or port from which the boat departs." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2572" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/departureBoatTerminal" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "departureBoatTerminal" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2574" + } ] +}, { + "@id" : "https://schema.org/departureBusStop", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The stop or station from which the bus departs." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2579" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/departureBusStop" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "departureBusStop" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2581" + } ] +}, { + "@id" : "https://schema.org/departureGate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Identifier of the flight's departure gate." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2587" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/departureGate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "departureGate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2589" + } ] +}, { + "@id" : "https://schema.org/departurePlatform", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The platform from which the train departs." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2593" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/departurePlatform" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "departurePlatform" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2595" + } ] +}, { + "@id" : "https://schema.org/departureStation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The station from which the train departs." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2599" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/departureStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "departureStation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2601" + } ] +}, { + "@id" : "https://schema.org/departureTerminal", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Identifier of the flight's departure terminal." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2606" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/departureTerminal" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "departureTerminal" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2608" + } ] +}, { + "@id" : "https://schema.org/departureTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The expected departure time." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2612" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/departureTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "departureTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2614" + } ] +}, { + "@id" : "https://schema.org/dependencies", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Prerequisites needed to fulfill steps in article." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2617" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dependencies" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dependencies" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2619" + } ] +}, { + "@id" : "https://schema.org/depth", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The depth of the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2623" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/depth" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "depth" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2627" + } ] +}, { + "@id" : "https://schema.org/description", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A description of the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2633" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/description" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "description" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2635" + } ] +}, { + "@id" : "https://schema.org/device", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Device required to run the application. Used in cases where a specific make/model is required to run the application." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2640" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/device" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "device" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2642" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/availableOnDevice" + } ] +}, { + "@id" : "https://schema.org/diagnosis", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "One or more alternative conditions considered in the differential diagnosis process as output of a diagnosis process." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2646" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/diagnosis" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "diagnosis" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2649" + } ] +}, { + "@id" : "https://schema.org/diagram", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An image containing a diagram that illustrates the structure and/or its component substructures and/or connections with other structures." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2654" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/diagram" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "diagram" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2656" + } ] +}, { + "@id" : "https://schema.org/diet", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of instrument. The diet used in this action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2661" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/diet" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "diet" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2663" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/instrument" + } ] +}, { + "@id" : "https://schema.org/dietFeatures", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Nutritional information specific to the dietary plan. May include dietary recommendations on what foods to avoid, what foods to consume, and specific alterations/deviations from the USDA or other regulatory body's approved dietary guidelines." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2668" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/dietFeatures" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dietFeatures" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2670" + } ] +}, { + "@id" : "https://schema.org/differentialDiagnosis", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "One of a set of differential diagnoses for the condition. Specifically, a closely-related or competing diagnosis typically considered later in the cognitive process whereby this medical condition is distinguished from others most likely responsible for a similar collection of signs and symptoms to reach the most parsimonious diagnosis or diagnoses in a patient." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2674" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/differentialDiagnosis" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "differentialDiagnosis" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2676" + } ] +}, { + "@id" : "https://schema.org/digitalSourceType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates an IPTCDigitalSourceEnumeration code indicating the nature of the digital source(s) for some CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2681" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/digitalSourceType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "digitalSourceType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2683" + } ] +}, { + "@id" : "https://schema.org/directApply", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether an url that is associated with a JobPosting enables direct application for the job, via the posting website. A job posting is considered to have directApply of True if an application process for the specified job can be directly initiated via the url(s) given (noting that e.g. multiple internet domains might nevertheless be involved at an implementation level). A value of False is appropriate if there is no clear path to applying directly online for the specified job, navigating directly from the JobPosting url(s) supplied." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2688" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/directApply" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "directApply" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2690" + } ] +}, { + "@id" : "https://schema.org/director", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A director of e.g. TV, radio, movie, video gaming etc. content, or of an event. Directors can be associated with individual items or with a series, episode, clip." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2692" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/director" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "director" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2704" + } ] +}, { + "@id" : "https://schema.org/directors", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A director of e.g. TV, radio, movie, video games etc. content. Directors can be associated with individual items or with a series, episode, clip." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2709" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/directors" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "directors" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2719" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/director" + } ] +}, { + "@id" : "https://schema.org/disambiguatingDescription", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of description. A short description of the item used to disambiguate from other, similar items. Information from other properties (in particular, name) may be necessary for the description to be useful for disambiguation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2724" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/disambiguatingDescription" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "disambiguatingDescription" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2726" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/description" + } ] +}, { + "@id" : "https://schema.org/discount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any discount applied (to an Order)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2730" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/discount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "discount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2732" + } ] +}, { + "@id" : "https://schema.org/discountCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Code used to redeem a discount." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2737" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/discountCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "discountCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2739" + } ] +}, { + "@id" : "https://schema.org/discountCurrency", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The currency of the discount.

\n\nUse standard formats: ISO 4217 currency format, e.g. \"USD\"; Ticker symbol for cryptocurrencies, e.g. \"BTC\"; well known names for Local Exchange Trading Systems (LETS) and other currency types, e.g. \"Ithaca HOUR\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2743" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/discountCurrency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "discountCurrency" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2745" + } ] +}, { + "@id" : "https://schema.org/discusses", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies the CreativeWork associated with the UserComment." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2749" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/discusses" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "discusses" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2751" + } ] +}, { + "@id" : "https://schema.org/discussionUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A link to the page containing the comments of the CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2756" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/discussionUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "discussionUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2758" + } ] +}, { + "@id" : "https://schema.org/diseasePreventionInfo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Information about disease prevention." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2762" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/diseasePreventionInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "diseasePreventionInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2764" + } ] +}, { + "@id" : "https://schema.org/diseaseSpreadStatistics", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Statistical information about the spread of a disease, either as WebContent, or\n described directly as a Dataset, or the specific Observations in the dataset. When a WebContent URL is\n provided, the page indicated might also contain more such markup." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2769" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/diseaseSpreadStatistics" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "diseaseSpreadStatistics" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2771" + } ] +}, { + "@id" : "https://schema.org/dissolutionDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date that this organization was dissolved." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2778" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dissolutionDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dissolutionDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2780" + } ] +}, { + "@id" : "https://schema.org/distance", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The distance travelled, e.g. exercising or travelling." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2782" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/distance" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "distance" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2785" + } ] +}, { + "@id" : "https://schema.org/distinguishingSign", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "One of a set of signs and symptoms that can be used to distinguish this diagnosis from others in the differential diagnosis." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2790" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/distinguishingSign" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "distinguishingSign" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2792" + } ] +}, { + "@id" : "https://schema.org/distribution", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A downloadable form of this dataset, at a specific location, in a specific format. This property can be repeated if different variations are available. There is no expectation that different downloadable distributions must contain exactly equivalent information (see also DCAT on this point). Different distributions might include or exclude different subsets of the entire dataset, for example." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2797" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/distribution" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "distribution" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2799" + } ] +}, { + "@id" : "https://schema.org/diversityPolicy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Statement on diversity policy by an Organization e.g. a NewsMediaOrganization. For a NewsMediaOrganization, a statement describing the newsroom’s diversity policy on both staffing and sources, typically providing staffing data." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2804" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/diversityPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "diversityPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2807" + } ] +}, { + "@id" : "https://schema.org/diversityStaffingReport", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For an Organization (often but not necessarily a NewsMediaOrganization), a report on staffing diversity issues. In a news context this might be for example ASNE or RTDNA (US) reports, or self-reported." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2812" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/diversityStaffingReport" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "diversityStaffingReport" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2815" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/publishingPrinciples" + } ] +}, { + "@id" : "https://schema.org/documentation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Further documentation describing the Web API in more detail." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2820" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/documentation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "documentation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2822" + } ] +}, { + "@id" : "https://schema.org/doesNotShip", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates when shipping to a particular shippingDestination is not available." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2827" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/doesNotShip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "doesNotShip" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2830" + } ] +}, { + "@id" : "https://schema.org/domainIncludes", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Relates a property to a class that is (one of) the type(s) the property is expected to be used on." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2832" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://meta.schema.org/domainIncludes" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "domainIncludes" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2834" + } ] +}, { + "@id" : "https://schema.org/domiciledMortgage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Whether borrower is a resident of the jurisdiction where the property is located." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2839" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/domiciledMortgage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "domiciledMortgage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2841" + } ] +}, { + "@id" : "https://schema.org/doorTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The time admission will commence." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2843" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/doorTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "doorTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2845" + } ] +}, { + "@id" : "https://schema.org/dosageForm", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A dosage form in which this drug/supplement is available, e.g. 'tablet', 'suspension', 'injection'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2848" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/dosageForm" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dosageForm" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2850" + } ] +}, { + "@id" : "https://schema.org/doseSchedule", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A dosing schedule for the drug for a given population, either observed, recommended, or maximum dose based on the type used." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2854" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/doseSchedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "doseSchedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2857" + } ] +}, { + "@id" : "https://schema.org/doseUnit", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The unit of the dose, e.g. 'mg'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2862" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/doseUnit" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "doseUnit" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2864" + } ] +}, { + "@id" : "https://schema.org/doseValue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The value of the dose, e.g. 500." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2868" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/doseValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "doseValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2870" + } ] +}, { + "@id" : "https://schema.org/downPayment", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "a type of payment made in cash during the onset of the purchase of an expensive good/service. The payment typically represents only a percentage of the full purchase price." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2876" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/downPayment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "downPayment" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2878" + } ] +}, { + "@id" : "https://schema.org/downloadUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "If the file can be downloaded, URL to download the binary." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2884" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/downloadUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "downloadUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2886" + } ] +}, { + "@id" : "https://schema.org/downvoteCount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of downvotes this question, answer or comment has received from the community." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2890" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/downvoteCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "downvoteCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2892" + } ] +}, { + "@id" : "https://schema.org/drainsTo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The vasculature that the vein drains into." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2894" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/drainsTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "drainsTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2896" + } ] +}, { + "@id" : "https://schema.org/driveWheelConfiguration", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The drive wheel configuration, i.e. which roadwheels will receive torque from the vehicle's engine via the drivetrain." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2901" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/driveWheelConfiguration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "driveWheelConfiguration" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2903" + } ] +}, { + "@id" : "https://schema.org/dropoffLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Where a rental car can be dropped off." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2908" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dropoffLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dropoffLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2910" + } ] +}, { + "@id" : "https://schema.org/dropoffTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "When a rental car can be dropped off." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2915" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/dropoffTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "dropoffTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2917" + } ] +}, { + "@id" : "https://schema.org/drug", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifying a drug or medicine used in a medication procedure." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2919" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/drug" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "drug" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2924" + } ] +}, { + "@id" : "https://schema.org/drugClass", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The class of drug this belongs to (e.g., statins)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2929" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/drugClass" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "drugClass" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2931" + } ] +}, { + "@id" : "https://schema.org/drugUnit", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The unit in which the drug is measured, e.g. '5 mg tablet'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2936" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/drugUnit" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "drugUnit" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2939" + } ] +}, { + "@id" : "https://schema.org/duns", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Dun & Bradstreet DUNS number for identifying an organization or business person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2943" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/duns" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "duns" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2946" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/duplicateTherapy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A therapy that duplicates or overlaps this one." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2950" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/duplicateTherapy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "duplicateTherapy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2952" + } ] +}, { + "@id" : "https://schema.org/duration", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The duration of the item (movie, audio recording, event, etc.) in ISO 8601 date format." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2957" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/duration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "duration" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2967" + } ] +}, { + "@id" : "https://schema.org/durationOfWarranty", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The duration of the warranty promise. Common unitCode values are ANN for year, MON for months, or DAY for days." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2972" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/durationOfWarranty" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "durationOfWarranty" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2974" + } ] +}, { + "@id" : "https://schema.org/duringMedia", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A media object representing the circumstances while performing this direction." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2979" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/duringMedia" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "duringMedia" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2981" + } ] +}, { + "@id" : "https://schema.org/earlyPrepaymentPenalty", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The amount to be paid as a penalty in the event of early payment of the loan." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2986" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/earlyPrepaymentPenalty" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "earlyPrepaymentPenalty" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2988" + } ] +}, { + "@id" : "https://schema.org/editEIDR", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An EIDR (Entertainment Identifier Registry) identifier representing a specific edit / edition for a work of film or television.

\n\nFor example, the motion picture known as \"Ghostbusters\" whose titleEIDR is \"10.5240/7EC7-228A-510A-053E-CBB8-J\" has several edits, e.g. \"10.5240/1F2A-E1C5-680A-14C6-E76B-I\" and \"10.5240/8A35-3BEE-6497-5D12-9E4F-3\".

\n\nSince schema.org types like Movie and TVEpisode can be used for both works and their multiple expressions, it is possible to use titleEIDR alone (for a general description), or alongside editEIDR for a more edit-specific description." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2993" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/editEIDR" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "editEIDR" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid2995" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/editor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies the Person who edited the CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid2999" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/editor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "editor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3001" + } ] +}, { + "@id" : "https://schema.org/eduQuestionType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For questions that are part of learning resources (e.g. Quiz), eduQuestionType indicates the format of question being given. Example: \"Multiple choice\", \"Open ended\", \"Flashcard\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3006" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/eduQuestionType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "eduQuestionType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3009" + } ] +}, { + "@id" : "https://schema.org/educationRequirements", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Educational background needed for the position or Occupation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3013" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/educationRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "educationRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3016" + } ] +}, { + "@id" : "https://schema.org/educationalAlignment", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An alignment to an established educational framework.

\n\nThis property should not be used where the nature of the alignment can be described using a simple property, for example to express that a resource teaches or assesses a competency." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3021" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/educationalAlignment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "educationalAlignment" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3024" + } ] +}, { + "@id" : "https://schema.org/educationalCredentialAwarded", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A description of the qualification, award, certificate, diploma or other educational credential awarded as a consequence of successful completion of this course or program." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3029" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/educationalCredentialAwarded" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "educationalCredentialAwarded" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3032" + } ] +}, { + "@id" : "https://schema.org/educationalFramework", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The framework to which the resource being described is aligned." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3037" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/educationalFramework" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "educationalFramework" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3039" + } ] +}, { + "@id" : "https://schema.org/educationalLevel", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The level in terms of progression through an educational or training context. Examples of educational levels include 'beginner', 'intermediate' or 'advanced', and formal sets of level indicators." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3043" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/educationalLevel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "educationalLevel" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3048" + } ] +}, { + "@id" : "https://schema.org/educationalProgramMode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Similar to courseMode, the medium or means of delivery of the program as a whole. The value may either be a text label (e.g. \"online\", \"onsite\" or \"blended\"; \"synchronous\" or \"asynchronous\"; \"full-time\" or \"part-time\") or a URL reference to a term from a controlled vocabulary (e.g. https://ceds.ed.gov/element/001311#Asynchronous )." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3053" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/educationalProgramMode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "educationalProgramMode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3055" + } ] +}, { + "@id" : "https://schema.org/educationalRole", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An educationalRole of an EducationalAudience." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3059" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/educationalRole" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "educationalRole" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3061" + } ] +}, { + "@id" : "https://schema.org/educationalUse", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The purpose of a work in the context of education; for example, 'assignment', 'group work'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3065" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/educationalUse" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "educationalUse" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3068" + } ] +}, { + "@id" : "https://schema.org/elevation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The elevation of a location (WGS 84). Values may be of the form 'NUMBER UNIT_OF_MEASUREMENT' (e.g., '1,000 m', '3,200 ft') while numbers alone should be assumed to be a value in meters." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3073" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/elevation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "elevation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3076" + } ] +}, { + "@id" : "https://schema.org/eligibilityToWorkRequirement", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The legal requirements such as citizenship, visa and other documentation required for an applicant to this job." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3081" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/eligibilityToWorkRequirement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "eligibilityToWorkRequirement" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3083" + } ] +}, { + "@id" : "https://schema.org/eligibleCustomerType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type(s) of customers for which the given offer is valid." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3087" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/eligibleCustomerType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "eligibleCustomerType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3090" + } ] +}, { + "@id" : "https://schema.org/eligibleDuration", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The duration for which the given offer is valid." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3095" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/eligibleDuration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "eligibleDuration" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3098" + } ] +}, { + "@id" : "https://schema.org/eligibleQuantity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The interval and unit of measurement of ordering quantities for which the offer or price specification is valid. This allows e.g. specifying that a certain freight charge is valid only for a certain quantity." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3103" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/eligibleQuantity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "eligibleQuantity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3107" + } ] +}, { + "@id" : "https://schema.org/eligibleRegion", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

\n\nSee also ineligibleRegion." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3112" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/eligibleRegion" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "eligibleRegion" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3117" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/areaServed" + } ] +}, { + "@id" : "https://schema.org/eligibleTransactionVolume", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The transaction volume, in a monetary unit, for which the offer or price specification is valid, e.g. for indicating a minimal purchasing volume, to express free shipping above a certain order volume, or to limit the acceptance of credit cards to purchases to a certain minimal amount." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3123" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/eligibleTransactionVolume" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "eligibleTransactionVolume" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3127" + } ] +}, { + "@id" : "https://schema.org/email", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Email address." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3132" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/email" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "email" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3136" + } ] +}, { + "@id" : "https://schema.org/embedUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A URL pointing to a player for a specific video. In general, this is the information in the src element of an embed tag and should not be the same as the content of the loc tag." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3140" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/embedUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "embedUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3142" + } ] +}, { + "@id" : "https://schema.org/embeddedTextCaption", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents textual captioning from a MediaObject, e.g. text of a 'meme'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3146" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/embeddedTextCaption" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "embeddedTextCaption" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3150" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/caption" + } ] +}, { + "@id" : "https://schema.org/emissionsCO2", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The CO2 emissions in g/km. When used in combination with a QuantitativeValue, put \"g/km\" into the unitText property of that value, since there is no UN/CEFACT Common Code for \"g/km\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3154" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/emissionsCO2" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "emissionsCO2" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3156" + } ] +}, { + "@id" : "https://schema.org/employee", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Someone working for this organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3158" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/employee" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "employee" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3160" + } ] +}, { + "@id" : "https://schema.org/employees", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "People working for this organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3165" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/employees" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "employees" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3167" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/employee" + } ] +}, { + "@id" : "https://schema.org/employerOverview", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A description of the employer, career opportunities and work environment for this position." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3172" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/employerOverview" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "employerOverview" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3174" + } ] +}, { + "@id" : "https://schema.org/employmentType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Type of employment (e.g. full-time, part-time, contract, temporary, seasonal, internship)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3178" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/employmentType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "employmentType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3180" + } ] +}, { + "@id" : "https://schema.org/employmentUnit", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the department, unit and/or facility where the employee reports and/or in which the job is to be performed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3184" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/employmentUnit" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "employmentUnit" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3186" + } ] +}, { + "@id" : "https://schema.org/encodesBioChemEntity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Another BioChemEntity encoded by this one." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3191" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/encodesBioChemEntity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "encodesBioChemEntity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3193" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/isEncodedByBioChemEntity" + } ] +}, { + "@id" : "https://schema.org/encodesCreativeWork", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The CreativeWork encoded by this media object." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3198" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/encodesCreativeWork" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "encodesCreativeWork" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3200" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/encoding" + } ] +}, { + "@id" : "https://schema.org/encoding", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A media object that encodes this CreativeWork. This property is a synonym for associatedMedia." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3205" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/encoding" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "encoding" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3207" + } ] +}, { + "@id" : "https://schema.org/encodingFormat", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Media type typically expressed using a MIME format (see IANA site and MDN reference), e.g. application/zip for a SoftwareApplication binary, audio/mpeg for .mp3 etc.

\n\nIn cases where a CreativeWork has several media type representations, encoding can be used to indicate each MediaObject alongside particular encodingFormat information.

\n\nUnregistered or niche encoding and file formats can be indicated instead via the most appropriate URL, e.g. defining Web page or a Wikipedia/Wikidata entry." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3212" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/encodingFormat" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "encodingFormat" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3215" + } ] +}, { + "@id" : "https://schema.org/encodingType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The supported encoding type(s) for an EntryPoint request." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3219" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/encodingType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "encodingType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3221" + } ] +}, { + "@id" : "https://schema.org/encodings", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A media object that encodes this CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3225" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/encodings" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "encodings" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3227" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/encoding" + } ] +}, { + "@id" : "https://schema.org/endDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The end date and time of the item (in ISO 8601 date format)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3232" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/endDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "endDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3241" + } ] +}, { + "@id" : "https://schema.org/endOffset", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The end time of the clip expressed as the number of seconds from the beginning of the work." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3244" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/endOffset" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "endOffset" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3246" + } ] +}, { + "@id" : "https://schema.org/endTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The endTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to end. For actions that span a period of time, when the action was performed. E.g. John wrote a book from January to December. For media, including audio and video, it's the time offset of the end of a clip within a larger file.

\n\nNote that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3252" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/endTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "endTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3258" + } ] +}, { + "@id" : "https://schema.org/endorsee", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of participant. The person/organization being supported." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3261" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/endorsee" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "endorsee" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3263" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/participant" + } ] +}, { + "@id" : "https://schema.org/endorsers", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "People or organizations that endorse the plan." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3269" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/endorsers" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "endorsers" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3271" + } ] +}, { + "@id" : "https://schema.org/energyEfficiencyScaleMax", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies the most energy efficient class on the regulated EU energy consumption scale for the product category a product belongs to. For example, energy consumption for televisions placed on the market after January 1, 2020 is scaled from D to A+++." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3277" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/energyEfficiencyScaleMax" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "energyEfficiencyScaleMax" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3279" + } ] +}, { + "@id" : "https://schema.org/energyEfficiencyScaleMin", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies the least energy efficient class on the regulated EU energy consumption scale for the product category a product belongs to. For example, energy consumption for televisions placed on the market after January 1, 2020 is scaled from D to A+++." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3284" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/energyEfficiencyScaleMin" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "energyEfficiencyScaleMin" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3286" + } ] +}, { + "@id" : "https://schema.org/engineDisplacement", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The volume swept by all of the pistons inside the cylinders of an internal combustion engine in a single movement.

\n\nTypical unit code(s): CMQ for cubic centimeter, LTR for liters, INQ for cubic inches\n* Note 1: You can link to information about how the given value has been determined using the valueReference property.\n* Note 2: You can use minValue and maxValue to indicate ranges." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3291" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/engineDisplacement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "engineDisplacement" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3293" + } ] +}, { + "@id" : "https://schema.org/enginePower", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The power of the vehicle's engine.\n Typical unit code(s): KWT for kilowatt, BHP for brake horsepower, N12 for metric horsepower (PS, with 1 PS = 735,49875 W)

\n\n\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3298" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/enginePower" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "enginePower" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3300" + } ] +}, { + "@id" : "https://schema.org/engineType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of engine or engines powering the vehicle." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3305" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/engineType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "engineType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3307" + } ] +}, { + "@id" : "https://schema.org/entertainmentBusiness", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of location. The entertainment business where the action occurred." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3312" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/entertainmentBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "entertainmentBusiness" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3314" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/location" + } ] +}, { + "@id" : "https://schema.org/epidemiology", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The characteristics of associated patients, such as age, gender, race etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3319" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/epidemiology" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "epidemiology" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3322" + } ] +}, { + "@id" : "https://schema.org/episode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An episode of a TV, radio or game media within a series or season." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3326" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/episode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "episode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3331" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/hasPart" + } ] +}, { + "@id" : "https://schema.org/episodeNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Position of the episode within an ordered group of episodes." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3336" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/episodeNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "episodeNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3338" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/position" + } ] +}, { + "@id" : "https://schema.org/episodes", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An episode of a TV/radio series or season." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3343" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/episodes" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "episodes" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3348" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/episode" + } ] +}, { + "@id" : "https://schema.org/equal", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This ordering relation for qualitative values indicates that the subject is equal to the object." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3353" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/equal" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "equal" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3355" + } ] +}, { + "@id" : "https://schema.org/error", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For failed actions, more information on the cause of the failure." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3360" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/error" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "error" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3362" + } ] +}, { + "@id" : "https://schema.org/estimatedCost", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The estimated cost of the supply or supplies consumed when performing instructions." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3367" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/estimatedCost" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "estimatedCost" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3370" + } ] +}, { + "@id" : "https://schema.org/estimatedFlightDuration", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The estimated time the flight will take." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3375" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/estimatedFlightDuration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "estimatedFlightDuration" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3377" + } ] +}, { + "@id" : "https://schema.org/estimatedSalary", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An estimated salary for a job posting or occupation, based on a variety of variables including, but not limited to industry, job title, and location. Estimated salaries are often computed by outside organizations rather than the hiring organization, who may not have committed to the estimated value." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3382" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/estimatedSalary" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "estimatedSalary" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3385" + } ] +}, { + "@id" : "https://schema.org/estimatesRiskOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The condition, complication, or symptom whose risk is being estimated." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3392" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/estimatesRiskOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "estimatesRiskOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3394" + } ] +}, { + "@id" : "https://schema.org/ethicsPolicy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Statement about ethics policy, e.g. of a NewsMediaOrganization regarding journalistic and publishing practices, or of a Restaurant, a page describing food source policies. In the case of a NewsMediaOrganization, an ethicsPolicy is typically a statement describing the personal, organizational, and corporate standards of behavior expected by the organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3399" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ethicsPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ethicsPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3402" + } ] +}, { + "@id" : "https://schema.org/event", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Upcoming or past event associated with this place, organization, or action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3407" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/event" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "event" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3415" + } ] +}, { + "@id" : "https://schema.org/eventAttendanceMode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The eventAttendanceMode of an event indicates whether it occurs online, offline, or a mix." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3420" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/eventAttendanceMode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "eventAttendanceMode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3422" + } ] +}, { + "@id" : "https://schema.org/eventSchedule", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Associates an Event with a Schedule. There are circumstances where it is preferable to share a schedule for a series of\n repeating events rather than data on the individual events themselves. For example, a website or application might prefer to publish a schedule for a weekly\n gym class rather than provide data on every event. A schedule could be processed by applications to add forthcoming events to a calendar. An Event that\n is associated with a Schedule using this property should not have startDate or endDate properties. These are instead defined within the associated\n Schedule, this avoids any ambiguity for clients using the data. The property might have repeated values to specify different schedules, e.g. for different months\n or seasons." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3427" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/eventSchedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "eventSchedule" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3429" + } ] +}, { + "@id" : "https://schema.org/eventStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An eventStatus of an event represents its status; particularly useful when an event is cancelled or rescheduled." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3434" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/eventStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "eventStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3436" + } ] +}, { + "@id" : "https://schema.org/events", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Upcoming or past events associated with this place or organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3441" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/events" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "events" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3444" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/event" + } ] +}, { + "@id" : "https://schema.org/evidenceLevel", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Strength of evidence of the data used to formulate the guideline (enumerated)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3449" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/evidenceLevel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "evidenceLevel" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3451" + } ] +}, { + "@id" : "https://schema.org/evidenceOrigin", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Source of the data used to formulate the guidance, e.g. RCT, consensus opinion, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3456" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/evidenceOrigin" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "evidenceOrigin" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3458" + } ] +}, { + "@id" : "https://schema.org/exampleOfWork", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A creative work that this work is an example/instance/realization/derivation of." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3462" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/exampleOfWork" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "exampleOfWork" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3464" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/workExample" + } ] +}, { + "@id" : "https://schema.org/exceptDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Defines a Date or DateTime during which a scheduled Event will not take place. The property allows exceptions to\n a Schedule to be specified. If an exception is specified as a DateTime then only the event that would have started at that specific date and time\n should be excluded from the schedule. If an exception is specified as a Date then any event that is scheduled for that 24 hour period should be\n excluded from the schedule. This allows a whole day to be excluded from the schedule without having to itemise every scheduled event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3469" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/exceptDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "exceptDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3471" + } ] +}, { + "@id" : "https://schema.org/exchangeRateSpread", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The difference between the price at which a broker or other intermediary buys and sells foreign currency." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3474" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/exchangeRateSpread" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "exchangeRateSpread" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3476" + } ] +}, { + "@id" : "https://schema.org/executableLibraryName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Library file name, e.g., mscorlib.dll, system.web.dll." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3482" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/executableLibraryName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "executableLibraryName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3484" + } ] +}, { + "@id" : "https://schema.org/exerciseCourse", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of location. The course where this action was taken." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3488" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/exerciseCourse" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "exerciseCourse" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3490" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/location" + } ] +}, { + "@id" : "https://schema.org/exercisePlan", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of instrument. The exercise plan used on this action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3495" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/exercisePlan" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "exercisePlan" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3497" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/instrument" + } ] +}, { + "@id" : "https://schema.org/exerciseRelatedDiet", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of instrument. The diet used in this action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3502" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/exerciseRelatedDiet" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "exerciseRelatedDiet" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3504" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/instrument" + } ] +}, { + "@id" : "https://schema.org/exerciseType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Type(s) of exercise or activity, such as strength training, flexibility training, aerobics, cardiac rehabilitation, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3509" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/exerciseType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "exerciseType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3512" + } ] +}, { + "@id" : "https://schema.org/exifData", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "exif data for this object." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3516" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/exifData" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "exifData" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3518" + } ] +}, { + "@id" : "https://schema.org/expectedArrivalFrom", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The earliest date the package may arrive." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3523" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/expectedArrivalFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "expectedArrivalFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3525" + } ] +}, { + "@id" : "https://schema.org/expectedArrivalUntil", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The latest date the package may arrive." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3528" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/expectedArrivalUntil" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "expectedArrivalUntil" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3530" + } ] +}, { + "@id" : "https://schema.org/expectedPrognosis", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The likely outcome in either the short term or long term of the medical condition." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3533" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/expectedPrognosis" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "expectedPrognosis" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3535" + } ] +}, { + "@id" : "https://schema.org/expectsAcceptanceOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An Offer which must be accepted before the user can perform the Action. For example, the user may need to buy a movie before being able to watch it." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3539" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/expectsAcceptanceOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "expectsAcceptanceOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3543" + } ] +}, { + "@id" : "https://schema.org/experienceInPlaceOfEducation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether a JobPosting will accept experience (as indicated by OccupationalExperienceRequirements) in place of its formal educational qualifications (as indicated by educationRequirements). If true, indicates that satisfying one of these requirements is sufficient." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3548" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/experienceInPlaceOfEducation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "experienceInPlaceOfEducation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3550" + } ] +}, { + "@id" : "https://schema.org/experienceRequirements", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Description of skills and experience needed for the position or Occupation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3552" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/experienceRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "experienceRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3555" + } ] +}, { + "@id" : "https://schema.org/expertConsiderations", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Medical expert advice related to the plan." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3560" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/expertConsiderations" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "expertConsiderations" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3562" + } ] +}, { + "@id" : "https://schema.org/expires", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Date the content expires and is no longer useful or available. For example a VideoObject or NewsArticle whose availability or relevance is time-limited, a ClaimReview fact check whose publisher wants to indicate that it may no longer be relevant (or helpful to highlight) after some date, or a Certification the validity has expired." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3566" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/expires" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "expires" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3569" + } ] +}, { + "@id" : "https://schema.org/expressedIn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Tissue, organ, biological sample, etc in which activity of this gene has been observed experimentally. For example brain, digestive system." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3572" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/expressedIn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "expressedIn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3574" + } ] +}, { + "@id" : "https://schema.org/familyName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Family name. In the U.S., the last name of a Person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3582" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/familyName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "familyName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3584" + } ] +}, { + "@id" : "https://schema.org/fatContent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of grams of fat." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3588" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/fatContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "fatContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3590" + } ] +}, { + "@id" : "https://schema.org/faxNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The fax number." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3595" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/faxNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "faxNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3600" + } ] +}, { + "@id" : "https://schema.org/featureList", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Features or modules provided by this application (and possibly required by other applications)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3604" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/featureList" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "featureList" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3606" + } ] +}, { + "@id" : "https://schema.org/feesAndCommissionsSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Description of fees, commissions, and other terms applied either to a class of financial product, or by a financial service organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3610" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/feesAndCommissionsSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "feesAndCommissionsSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3613" + } ] +}, { + "@id" : "https://schema.org/fiberContent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of grams of fiber." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3617" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/fiberContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "fiberContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3619" + } ] +}, { + "@id" : "https://schema.org/fileFormat", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Media type, typically MIME format (see IANA site) of the content, e.g. application/zip of a SoftwareApplication binary. In cases where a CreativeWork has several media type representations, 'encoding' can be used to indicate each MediaObject alongside particular fileFormat information. Unregistered or niche file formats can be indicated instead via the most appropriate URL, e.g. defining Web page or a Wikipedia entry." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3624" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/fileFormat" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "fileFormat" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3626" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/encodingFormat" + } ] +}, { + "@id" : "https://schema.org/fileSize", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Size of the application / package (e.g. 18MB). In the absence of a unit (MB, KB etc.), KB will be assumed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3630" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/fileSize" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "fileSize" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3632" + } ] +}, { + "@id" : "https://schema.org/financialAidEligible", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A financial aid type or program which students may use to pay for tuition or fees associated with the program." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3636" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/financialAidEligible" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "financialAidEligible" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3639" + } ] +}, { + "@id" : "https://schema.org/firstAppearance", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the first known occurrence of a Claim in some CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3644" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/firstAppearance" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "firstAppearance" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3646" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/workExample" + } ] +}, { + "@id" : "https://schema.org/firstPerformance", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date and place the work was first performed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3651" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/firstPerformance" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "firstPerformance" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3653" + } ] +}, { + "@id" : "https://schema.org/flightDistance", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The distance of the flight." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3658" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/flightDistance" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "flightDistance" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3660" + } ] +}, { + "@id" : "https://schema.org/flightNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The unique identifier for a flight including the airline IATA code. For example, if describing United flight 110, where the IATA code for United is 'UA', the flightNumber is 'UA110'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3665" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/flightNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "flightNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3667" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/floorLevel", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The floor level for an Accommodation in a multi-storey building. Since counting\n systems vary internationally, the local system should be used where possible." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3671" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/floorLevel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "floorLevel" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3673" + } ] +}, { + "@id" : "https://schema.org/floorLimit", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A floor limit is the amount of money above which credit card transactions must be authorized." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3677" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/floorLimit" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "floorLimit" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3679" + } ] +}, { + "@id" : "https://schema.org/floorSize", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The size of the accommodation, e.g. in square meter or squarefoot.\nTypical unit code(s): MTK for square meter, FTK for square foot, or YDK for square yard." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3684" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/floorSize" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "floorSize" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3687" + } ] +}, { + "@id" : "https://schema.org/followee", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of object. The person or organization being followed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3692" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/followee" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "followee" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3694" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/object" + } ] +}, { + "@id" : "https://schema.org/follows", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The most generic uni-directional social relation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3700" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/follows" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "follows" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3702" + } ] +}, { + "@id" : "https://schema.org/followup", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Typical or recommended followup care after the procedure is performed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3707" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/followup" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "followup" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3709" + } ] +}, { + "@id" : "https://schema.org/foodEstablishment", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of location. The specific food establishment where the action occurred." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3713" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/foodEstablishment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "foodEstablishment" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3715" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/location" + } ] +}, { + "@id" : "https://schema.org/foodEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of location. The specific food event where the action occurred." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3721" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/foodEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "foodEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3723" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/location" + } ] +}, { + "@id" : "https://schema.org/foodWarning", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any precaution, guidance, contraindication, etc. related to consumption of specific foods while taking this drug." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3728" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/foodWarning" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "foodWarning" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3730" + } ] +}, { + "@id" : "https://schema.org/founder", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A person who founded this organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3734" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/founder" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "founder" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3736" + } ] +}, { + "@id" : "https://schema.org/founders", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A person who founded this organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3741" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/founders" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "founders" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3743" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/founder" + } ] +}, { + "@id" : "https://schema.org/foundingDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date that this organization was founded." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3748" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/foundingDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "foundingDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3750" + } ] +}, { + "@id" : "https://schema.org/foundingLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The place where the Organization was founded." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3752" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/foundingLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "foundingLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3754" + } ] +}, { + "@id" : "https://schema.org/free", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A flag to signal that the item, event, or place is accessible for free." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3759" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/free" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "free" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3761" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/isAccessibleForFree" + } ] +}, { + "@id" : "https://schema.org/freeShippingThreshold", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A monetary value above (or at) which the shipping rate becomes free. Intended to be used via an OfferShippingDetails with shippingSettingsLink matching this ShippingRateSettings." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3763" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/freeShippingThreshold" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "freeShippingThreshold" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3765" + } ] +}, { + "@id" : "https://schema.org/frequency", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "How often the dose is taken, e.g. 'daily'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3771" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/frequency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "frequency" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3773" + } ] +}, { + "@id" : "https://schema.org/fromLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of location. The original location of the object or the agent before the action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3777" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/fromLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "fromLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3781" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/location" + } ] +}, { + "@id" : "https://schema.org/fuelCapacity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The capacity of the fuel tank or in the case of electric cars, the battery. If there are multiple components for storage, this should indicate the total of all storage of the same type.

\n\nTypical unit code(s): LTR for liters, GLL of US gallons, GLI for UK / imperial gallons, AMH for ampere-hours (for electrical vehicles)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3786" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/fuelCapacity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "fuelCapacity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3788" + } ] +}, { + "@id" : "https://schema.org/fuelConsumption", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The amount of fuel consumed for traveling a particular distance or temporal duration with the given vehicle (e.g. liters per 100 km).

\n\n
    \n
  • Note 1: There are unfortunately no standard unit codes for liters per 100 km. Use unitText to indicate the unit of measurement, e.g. L/100 km.
  • \n
  • Note 2: There are two ways of indicating the fuel consumption, fuelConsumption (e.g. 8 liters per 100 km) and fuelEfficiency (e.g. 30 miles per gallon). They are reciprocal.
  • \n
  • Note 3: Often, the absolute value is useful only when related to driving speed (\"at 80 km/h\") or usage pattern (\"city traffic\"). You can use valueReference to link the value for the fuel consumption to another value.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3793" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/fuelConsumption" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "fuelConsumption" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3795" + } ] +}, { + "@id" : "https://schema.org/fuelEfficiency", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The distance traveled per unit of fuel used; most commonly miles per gallon (mpg) or kilometers per liter (km/L).

\n\n
    \n
  • Note 1: There are unfortunately no standard unit codes for miles per gallon or kilometers per liter. Use unitText to indicate the unit of measurement, e.g. mpg or km/L.
  • \n
  • Note 2: There are two ways of indicating the fuel consumption, fuelConsumption (e.g. 8 liters per 100 km) and fuelEfficiency (e.g. 30 miles per gallon). They are reciprocal.
  • \n
  • Note 3: Often, the absolute value is useful only when related to driving speed (\"at 80 km/h\") or usage pattern (\"city traffic\"). You can use valueReference to link the value for the fuel economy to another value.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3800" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/fuelEfficiency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "fuelEfficiency" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3802" + } ] +}, { + "@id" : "https://schema.org/fuelType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of fuel suitable for the engine or engines of the vehicle. If the vehicle has only one engine, this property can be attached directly to the vehicle." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3807" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/fuelType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "fuelType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3810" + } ] +}, { + "@id" : "https://schema.org/functionalClass", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The degree of mobility the joint allows." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3815" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/functionalClass" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "functionalClass" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3817" + } ] +}, { + "@id" : "https://schema.org/fundedItem", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates something directly or indirectly funded or sponsored through a Grant. See also ownershipFundingInfo." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3822" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/fundedItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "fundedItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3824" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/funding" + } ] +}, { + "@id" : "https://schema.org/funder", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A person or organization that supports (sponsors) something through some kind of financial contribution." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3835" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/funder" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "funder" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3842" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/sponsor" + } ] +}, { + "@id" : "https://schema.org/funding", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Grant that directly or indirectly provide funding or sponsorship for this item. See also ownershipFundingInfo." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3848" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/funding" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "funding" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3856" + } ] +}, { + "@id" : "https://schema.org/game", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Video game which is played on this server." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3861" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/game" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "game" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3863" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/gameServer" + } ] +}, { + "@id" : "https://schema.org/gameAvailabilityType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the availability type of the game content associated with this action, such as whether it is a full version or a demo." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3868" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/gameAvailabilityType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gameAvailabilityType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3870" + } ] +}, { + "@id" : "https://schema.org/gameEdition", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The edition of a video game." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3875" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/gameEdition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gameEdition" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3877" + } ] +}, { + "@id" : "https://schema.org/gameItem", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An item is an object within the game world that can be collected by a player or, occasionally, a non-player character." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3881" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/gameItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gameItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3884" + } ] +}, { + "@id" : "https://schema.org/gameLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Real or fictional location of the game (or part of game)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3889" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/gameLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gameLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3892" + } ] +}, { + "@id" : "https://schema.org/gamePlatform", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The electronic systems used to play video games." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3898" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/gamePlatform" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gamePlatform" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3901" + } ] +}, { + "@id" : "https://schema.org/gameServer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The server on which it is possible to play the game." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3906" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/gameServer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gameServer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3908" + } ] +}, { + "@id" : "https://schema.org/gameTip", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Links to tips, tactics, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3913" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/gameTip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gameTip" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3915" + } ] +}, { + "@id" : "https://schema.org/gender", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Gender of something, typically a Person, but possibly also fictional characters, animals, etc. While https://schema.org/Male and https://schema.org/Female may be used, text strings are also acceptable for people who do not identify as a binary gender. The gender property can also be used in an extended sense to cover e.g. the gender of sports teams. As with the gender of individuals, we do not try to enumerate all possibilities. A mixed-gender SportsTeam can be indicated with a text value of \"Mixed\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3920" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/gender" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gender" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3923" + } ] +}, { + "@id" : "https://schema.org/genre", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Genre of the creative work, broadcast channel or group." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3928" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/genre" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "genre" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3932" + } ] +}, { + "@id" : "https://schema.org/geo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The geo coordinates of the place." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3936" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/geo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "geo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3938" + } ] +}, { + "@id" : "https://schema.org/geoContains", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents a relationship between two geometries (or the places they represent), relating a containing geometry to a contained geometry. \"a contains b iff no points of b lie in the exterior of a, and at least one point of the interior of b lies in the interior of a\". As defined in DE-9IM." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3944" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/geoContains" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "geoContains" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3947" + } ] +}, { + "@id" : "https://schema.org/geoCoveredBy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents a relationship between two geometries (or the places they represent), relating a geometry to another that covers it. As defined in DE-9IM." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3953" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/geoCoveredBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "geoCoveredBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3956" + } ] +}, { + "@id" : "https://schema.org/geoCovers", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents a relationship between two geometries (or the places they represent), relating a covering geometry to a covered geometry. \"Every point of b is a point of (the interior or boundary of) a\". As defined in DE-9IM." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3962" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/geoCovers" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "geoCovers" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3965" + } ] +}, { + "@id" : "https://schema.org/geoCrosses", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents a relationship between two geometries (or the places they represent), relating a geometry to another that crosses it: \"a crosses b: they have some but not all interior points in common, and the dimension of the intersection is less than that of at least one of them\". As defined in DE-9IM." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3971" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/geoCrosses" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "geoCrosses" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3974" + } ] +}, { + "@id" : "https://schema.org/geoDisjoint", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents spatial relations in which two geometries (or the places they represent) are topologically disjoint: \"they have no point in common. They form a set of disconnected geometries.\" (A symmetric relationship, as defined in DE-9IM.)" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3980" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/geoDisjoint" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "geoDisjoint" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3983" + } ] +}, { + "@id" : "https://schema.org/geoEquals", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents spatial relations in which two geometries (or the places they represent) are topologically equal, as defined in DE-9IM. \"Two geometries are topologically equal if their interiors intersect and no part of the interior or boundary of one geometry intersects the exterior of the other\" (a symmetric relationship)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3989" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/geoEquals" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "geoEquals" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid3992" + } ] +}, { + "@id" : "https://schema.org/geoIntersects", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents spatial relations in which two geometries (or the places they represent) have at least one point in common. As defined in DE-9IM." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid3998" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/geoIntersects" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "geoIntersects" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4001" + } ] +}, { + "@id" : "https://schema.org/geoMidpoint", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the GeoCoordinates at the centre of a GeoShape, e.g. GeoCircle." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4007" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/geoMidpoint" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "geoMidpoint" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4009" + } ] +}, { + "@id" : "https://schema.org/geoOverlaps", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents a relationship between two geometries (or the places they represent), relating a geometry to another that geospatially overlaps it, i.e. they have some but not all points in common. As defined in DE-9IM." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4014" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/geoOverlaps" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "geoOverlaps" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4017" + } ] +}, { + "@id" : "https://schema.org/geoRadius", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the approximate radius of a GeoCircle (metres unless indicated otherwise via Distance notation)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4023" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/geoRadius" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "geoRadius" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4025" + } ] +}, { + "@id" : "https://schema.org/geoTouches", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents spatial relations in which two geometries (or the places they represent) touch: \"they have at least one boundary point in common, but no interior points.\" (A symmetric relationship, as defined in DE-9IM.)" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4031" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/geoTouches" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "geoTouches" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4034" + } ] +}, { + "@id" : "https://schema.org/geoWithin", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Represents a relationship between two geometries (or the places they represent), relating a geometry to one that contains it, i.e. it is inside (i.e. within) its interior. As defined in DE-9IM." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4040" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/geoWithin" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "geoWithin" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4043" + } ] +}, { + "@id" : "https://schema.org/geographicArea", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The geographic area associated with the audience." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4049" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/geographicArea" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "geographicArea" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4051" + } ] +}, { + "@id" : "https://schema.org/gettingTestedInfo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Information about getting tested (for a MedicalCondition), e.g. in the context of a pandemic." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4056" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/gettingTestedInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gettingTestedInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4058" + } ] +}, { + "@id" : "https://schema.org/givenName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Given name. In the U.S., the first name of a Person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4063" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/givenName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "givenName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4065" + } ] +}, { + "@id" : "https://schema.org/globalLocationNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Global Location Number (GLN, sometimes also referred to as International Location Number or ILN) of the respective organization, person, or place. The GLN is a 13-digit number used to identify parties and physical locations." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4069" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/globalLocationNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "globalLocationNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4073" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/governmentBenefitsInfo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "governmentBenefitsInfo provides information about government benefits associated with a SpecialAnnouncement." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4077" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/governmentBenefitsInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "governmentBenefitsInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4079" + } ] +}, { + "@id" : "https://schema.org/gracePeriod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The period of time after any due date that the borrower has to fulfil its obligations before a default (failure to pay) is deemed to have occurred." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4084" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/gracePeriod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gracePeriod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4086" + } ] +}, { + "@id" : "https://schema.org/grantee", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The person, organization, contact point, or audience that has been granted this permission." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4091" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/grantee" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "grantee" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4093" + } ] +}, { + "@id" : "https://schema.org/greater", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This ordering relation for qualitative values indicates that the subject is greater than the object." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4101" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/greater" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "greater" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4103" + } ] +}, { + "@id" : "https://schema.org/greaterOrEqual", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This ordering relation for qualitative values indicates that the subject is greater than or equal to the object." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4108" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/greaterOrEqual" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "greaterOrEqual" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4110" + } ] +}, { + "@id" : "https://schema.org/gtin", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Global Trade Item Number (GTIN). GTINs identify trade items, including products and services, using numeric identification codes.

\n\nThe GS1 digital link specifications express GTINs as URLs (URIs, IRIs, etc.). Details including regular expression examples can be found in, Section 6 of the GS1 URI Syntax specification; see also schema.org tracking issue for schema.org-specific discussion. A correct gtin value should be a valid GTIN, which means that it should be an all-numeric string of either 8, 12, 13 or 14 digits, or a \"GS1 Digital Link\" URL based on such a string. The numeric component should also have a valid GS1 check digit and meet the other rules for valid GTINs. See also GS1's GTIN Summary and Wikipedia for more details. Left-padding of the gtin values is not required or encouraged. The gtin property generalizes the earlier gtin8, gtin12, gtin13, and gtin14 properties.

\n\nNote also that this is a definition for how to include GTINs in Schema.org data, and not a definition of GTINs in general - see the GS1 documentation for authoritative details." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4115" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/gtin" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gtin" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4119" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/gtin12", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The GTIN-12 code of the product, or the product to which the offer refers. The GTIN-12 is the 12-digit GS1 Identification Key composed of a U.P.C. Company Prefix, Item Reference, and Check Digit used to identify trade items. See GS1 GTIN Summary for more details." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4123" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/gtin12" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gtin12" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4127" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/gtin" + }, { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/gtin13", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The GTIN-13 code of the product, or the product to which the offer refers. This is equivalent to 13-digit ISBN codes and EAN UCC-13. Former 12-digit UPC codes can be converted into a GTIN-13 code by simply adding a preceding zero. See GS1 GTIN Summary for more details." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4131" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/gtin13" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gtin13" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4135" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/gtin" + }, { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/gtin14", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The GTIN-14 code of the product, or the product to which the offer refers. See GS1 GTIN Summary for more details." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4139" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/gtin14" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gtin14" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4143" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/gtin" + }, { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/gtin8", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The GTIN-8 code of the product, or the product to which the offer refers. This code is also known as EAN/UCC-8 or 8-digit EAN. See GS1 GTIN Summary for more details." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4147" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/gtin8" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "gtin8" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4151" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/gtin" + }, { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/guideline", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical guideline related to this entity." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4155" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/guideline" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "guideline" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4157" + } ] +}, { + "@id" : "https://schema.org/guidelineDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Date on which this guideline's recommendation was made." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4162" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/guidelineDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "guidelineDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4164" + } ] +}, { + "@id" : "https://schema.org/guidelineSubject", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The medical conditions, treatments, etc. that are the subject of the guideline." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4166" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/guidelineSubject" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "guidelineSubject" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4168" + } ] +}, { + "@id" : "https://schema.org/handlingTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The typical delay between the receipt of the order and the goods either leaving the warehouse or being prepared for pickup, in case the delivery method is on site pickup. Typical properties: minValue, maxValue, unitCode (d for DAY). This is by common convention assumed to mean business days (if a unitCode is used, coded as \"d\"), i.e. only counting days when the business normally operates." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4173" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/handlingTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "handlingTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4175" + } ] +}, { + "@id" : "https://schema.org/hasAdultConsideration", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Used to tag an item to be intended or suitable for consumption or use by adults only." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4180" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasAdultConsideration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasAdultConsideration" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4183" + } ] +}, { + "@id" : "https://schema.org/hasBioChemEntityPart", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a BioChemEntity that (in some sense) has this BioChemEntity as a part." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4188" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasBioChemEntityPart" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasBioChemEntityPart" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4190" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/isPartOfBioChemEntity" + } ] +}, { + "@id" : "https://schema.org/hasBioPolymerSequence", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A symbolic representation of a BioChemEntity. For example, a nucleotide sequence of a Gene or an amino acid sequence of a Protein." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4195" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasBioPolymerSequence" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasBioPolymerSequence" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4198" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/hasRepresentation" + } ] +}, { + "@id" : "https://schema.org/hasBroadcastChannel", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A broadcast channel of a broadcast service." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4202" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hasBroadcastChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasBroadcastChannel" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4204" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/providesBroadcastService" + } ] +}, { + "@id" : "https://schema.org/hasCategoryCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Category code contained in this code set." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4209" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasCategoryCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasCategoryCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4211" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/hasDefinedTerm" + } ] +}, { + "@id" : "https://schema.org/hasCertification", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Certification information about a product, organization, service, place, or person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4216" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hasCertification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasCertification" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4222" + } ] +}, { + "@id" : "https://schema.org/hasCourse", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A course or class that is one of the learning opportunities that constitute an educational / occupational program. No information is implied about whether the course is mandatory or optional; no guarantee is implied about whether the course will be available to everyone on the program." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4227" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasCourse" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasCourse" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4229" + } ] +}, { + "@id" : "https://schema.org/hasCourseInstance", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An offering of the course at a specific time and place or through specific media or mode of study or to a specific section of students." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4234" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hasCourseInstance" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasCourseInstance" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4236" + } ] +}, { + "@id" : "https://schema.org/hasCredential", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A credential awarded to the Person or Organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4241" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasCredential" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasCredential" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4244" + } ] +}, { + "@id" : "https://schema.org/hasDefinedTerm", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A Defined Term contained in this term set." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4249" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasDefinedTerm" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasDefinedTerm" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4252" + } ] +}, { + "@id" : "https://schema.org/hasDeliveryMethod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Method used for delivery or shipping." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4257" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hasDeliveryMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasDeliveryMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4260" + } ] +}, { + "@id" : "https://schema.org/hasDigitalDocumentPermission", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A permission related to the access to this document (e.g. permission to read or write an electronic document). For a public document, specify a grantee with an Audience with audienceType equal to \"public\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4265" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hasDigitalDocumentPermission" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasDigitalDocumentPermission" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4267" + } ] +}, { + "@id" : "https://schema.org/hasDriveThroughService", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether some facility (e.g. FoodEstablishment, CovidTestingFacility) offers a service that can be used by driving through in a car. In the case of CovidTestingFacility such facilities could potentially help with social distancing from other potentially-infected users." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4272" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasDriveThroughService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasDriveThroughService" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4274" + } ] +}, { + "@id" : "https://schema.org/hasEnergyConsumptionDetails", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Defines the energy efficiency Category (also known as \"class\" or \"rating\") for a product according to an international energy efficiency standard." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4276" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasEnergyConsumptionDetails" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasEnergyConsumptionDetails" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4278" + } ] +}, { + "@id" : "https://schema.org/hasEnergyEfficiencyCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Defines the energy efficiency Category (which could be either a rating out of range of values or a yes/no certification) for a product according to an international energy efficiency standard." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4283" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasEnergyEfficiencyCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasEnergyEfficiencyCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4285" + } ] +}, { + "@id" : "https://schema.org/hasHealthAspect", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the aspect or aspects specifically addressed in some HealthTopicContent. For example, that the content is an overview, or that it talks about treatment, self-care, treatments or their side-effects." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4290" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasHealthAspect" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasHealthAspect" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4292" + } ] +}, { + "@id" : "https://schema.org/hasMap", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A URL to a map of the place." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4297" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hasMap" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasMap" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4299" + } ] +}, { + "@id" : "https://schema.org/hasMeasurement", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A measurement of an item, For example, the inseam of pants, the wheel size of a bicycle, the gauge of a screw, or the carbon footprint measured for certification by an authority. Usually an exact measurement, but can also be a range of measurements for adjustable products, for example belts and ski bindings." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4304" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasMeasurement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasMeasurement" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4309" + } ] +}, { + "@id" : "https://schema.org/hasMenu", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Either the actual menu as a structured representation, as text, or a URL of the menu." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4314" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hasMenu" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasMenu" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4316" + } ] +}, { + "@id" : "https://schema.org/hasMenuItem", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A food or drink item contained in a menu or menu section." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4321" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hasMenuItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasMenuItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4324" + } ] +}, { + "@id" : "https://schema.org/hasMenuSection", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A subgrouping of the menu (by dishes, course, serving time period, etc.)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4329" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hasMenuSection" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasMenuSection" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4332" + } ] +}, { + "@id" : "https://schema.org/hasMerchantReturnPolicy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies a MerchantReturnPolicy that may be applicable." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4337" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasMerchantReturnPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasMerchantReturnPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4341" + } ] +}, { + "@id" : "https://schema.org/hasMolecularFunction", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Molecular function performed by this BioChemEntity; please use PropertyValue if you want to include any evidence." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4346" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasMolecularFunction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasMolecularFunction" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4348" + } ] +}, { + "@id" : "https://schema.org/hasOccupation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Person's occupation. For past professions, use Role for expressing dates." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4354" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hasOccupation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasOccupation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4356" + } ] +}, { + "@id" : "https://schema.org/hasOfferCatalog", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates an OfferCatalog listing for this Organization, Person, or Service." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4361" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hasOfferCatalog" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasOfferCatalog" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4365" + } ] +}, { + "@id" : "https://schema.org/hasPOS", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Points-of-Sales operated by the organization or person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4370" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hasPOS" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasPOS" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4373" + } ] +}, { + "@id" : "https://schema.org/hasPart", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates an item or CreativeWork that is part of this item, or CreativeWork (in some sense)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4378" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hasPart" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasPart" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4380" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/isPartOf" + } ] +}, { + "@id" : "https://schema.org/hasProductReturnPolicy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a ProductReturnPolicy that may be applicable." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4385" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://attic.schema.org/hasProductReturnPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasProductReturnPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4388" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/hasMerchantReturnPolicy" + } ] +}, { + "@id" : "https://schema.org/hasRepresentation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A common representation such as a protein sequence or chemical structure for this entity. For images use schema.org/image." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4393" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasRepresentation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasRepresentation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4395" + } ] +}, { + "@id" : "https://schema.org/hasVariant", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a Product that is a member of this ProductGroup (or ProductModel)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4400" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/hasVariant" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hasVariant" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4402" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/isVariantOf" + } ] +}, { + "@id" : "https://schema.org/headline", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Headline of the article." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4407" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/headline" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "headline" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4409" + } ] +}, { + "@id" : "https://schema.org/healthCondition", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifying the health condition(s) of a patient, medical study, or other target audience." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4413" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/healthCondition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "healthCondition" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4417" + } ] +}, { + "@id" : "https://schema.org/healthPlanCoinsuranceOption", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Whether the coinsurance applies before or after deductible, etc. TODO: Is this a closed set?" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4422" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/healthPlanCoinsuranceOption" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "healthPlanCoinsuranceOption" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4424" + } ] +}, { + "@id" : "https://schema.org/healthPlanCoinsuranceRate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The rate of coinsurance expressed as a number between 0.0 and 1.0." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4428" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/healthPlanCoinsuranceRate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "healthPlanCoinsuranceRate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4430" + } ] +}, { + "@id" : "https://schema.org/healthPlanCopay", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The copay amount." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4432" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/healthPlanCopay" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "healthPlanCopay" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4434" + } ] +}, { + "@id" : "https://schema.org/healthPlanCopayOption", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Whether the copay is before or after deductible, etc. TODO: Is this a closed set?" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4439" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/healthPlanCopayOption" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "healthPlanCopayOption" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4441" + } ] +}, { + "@id" : "https://schema.org/healthPlanCostSharing", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The costs to the patient for services under this network or formulary." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4445" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/healthPlanCostSharing" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "healthPlanCostSharing" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4448" + } ] +}, { + "@id" : "https://schema.org/healthPlanDrugOption", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "TODO." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4450" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/healthPlanDrugOption" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "healthPlanDrugOption" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4452" + } ] +}, { + "@id" : "https://schema.org/healthPlanDrugTier", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The tier(s) of drugs offered by this formulary or insurance plan." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4456" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/healthPlanDrugTier" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "healthPlanDrugTier" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4459" + } ] +}, { + "@id" : "https://schema.org/healthPlanId", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The 14-character, HIOS-generated Plan ID number. (Plan IDs must be unique, even across different markets.)" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4463" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/healthPlanId" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "healthPlanId" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4465" + } ] +}, { + "@id" : "https://schema.org/healthPlanMarketingUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The URL that goes directly to the plan brochure for the specific standard plan or plan variation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4469" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/healthPlanMarketingUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "healthPlanMarketingUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4471" + } ] +}, { + "@id" : "https://schema.org/healthPlanNetworkId", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Name or unique ID of network. (Networks are often reused across different insurance plans.)" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4475" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/healthPlanNetworkId" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "healthPlanNetworkId" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4478" + } ] +}, { + "@id" : "https://schema.org/healthPlanNetworkTier", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The tier(s) for this network." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4482" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/healthPlanNetworkTier" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "healthPlanNetworkTier" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4484" + } ] +}, { + "@id" : "https://schema.org/healthPlanPharmacyCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The category or type of pharmacy associated with this cost sharing." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4488" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/healthPlanPharmacyCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "healthPlanPharmacyCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4490" + } ] +}, { + "@id" : "https://schema.org/healthcareReportingData", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates data describing a hospital, e.g. a CDC CDCPMDRecord or as some kind of Dataset." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4494" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/healthcareReportingData" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "healthcareReportingData" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4496" + } ] +}, { + "@id" : "https://schema.org/height", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The height of the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4502" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/height" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "height" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4508" + } ] +}, { + "@id" : "https://schema.org/highPrice", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The highest price of all offers available.

\n\nUsage guidelines:

\n\n
    \n
  • Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
  • \n
  • Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4514" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/highPrice" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "highPrice" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4516" + } ] +}, { + "@id" : "https://schema.org/hiringOrganization", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Organization or Person offering the job position." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4521" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hiringOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hiringOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4523" + } ] +}, { + "@id" : "https://schema.org/holdingArchive", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "ArchiveOrganization that holds, keeps or maintains the ArchiveComponent." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4529" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/holdingArchive" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "holdingArchive" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4531" + } ] +}, { + "@id" : "https://schema.org/homeLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A contact location for a person's residence." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4536" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/homeLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "homeLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4538" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/location" + } ] +}, { + "@id" : "https://schema.org/homeTeam", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The home team in a sports event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4544" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/homeTeam" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "homeTeam" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4546" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/competitor" + } ] +}, { + "@id" : "https://schema.org/honorificPrefix", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An honorific prefix preceding a Person's name such as Dr/Mrs/Mr." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4552" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/honorificPrefix" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "honorificPrefix" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4554" + } ] +}, { + "@id" : "https://schema.org/honorificSuffix", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An honorific suffix following a Person's name such as M.D./PhD/MSCSW." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4558" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/honorificSuffix" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "honorificSuffix" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4560" + } ] +}, { + "@id" : "https://schema.org/hospitalAffiliation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A hospital with which the physician or office is affiliated." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4564" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/hospitalAffiliation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hospitalAffiliation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4566" + } ] +}, { + "@id" : "https://schema.org/hostingOrganization", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The organization (airline, travelers' club, etc.) the membership is made with." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4571" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hostingOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hostingOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4573" + } ] +}, { + "@id" : "https://schema.org/hoursAvailable", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The hours during which this service or contact is available." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4578" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/hoursAvailable" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "hoursAvailable" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4582" + } ] +}, { + "@id" : "https://schema.org/howPerformed", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "How the procedure is performed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4587" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/howPerformed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "howPerformed" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4589" + } ] +}, { + "@id" : "https://schema.org/httpMethod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An HTTP method that specifies the appropriate HTTP method for a request to an HTTP EntryPoint. Values are capitalized strings as used in HTTP." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4593" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/httpMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "httpMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4595" + } ] +}, { + "@id" : "https://schema.org/iataCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "IATA identifier for an airline or airport." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4599" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/iataCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "iataCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4602" + } ] +}, { + "@id" : "https://schema.org/icaoCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "ICAO identifier for an airport." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4606" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/icaoCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "icaoCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4608" + } ] +}, { + "@id" : "https://schema.org/identifier", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The identifier property represents any kind of identifier for any kind of Thing, such as ISBNs, GTIN codes, UUIDs etc. Schema.org provides dedicated properties for representing many of these, either as textual strings or as URL (URI) links. See background notes for more details." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4612" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/identifier" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "identifier" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4614" + } ] +}, { + "@id" : "https://schema.org/identifyingExam", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A physical examination that can identify this sign." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4619" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/identifyingExam" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "identifyingExam" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4621" + } ] +}, { + "@id" : "https://schema.org/identifyingTest", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A diagnostic test that can identify this sign." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4626" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/identifyingTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "identifyingTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4628" + } ] +}, { + "@id" : "https://schema.org/illustrator", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The illustrator of the book." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4633" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/illustrator" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "illustrator" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4635" + } ] +}, { + "@id" : "https://schema.org/image", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An image of the item. This can be a URL or a fully described ImageObject." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4640" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/image" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "image" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4642" + } ] +}, { + "@id" : "https://schema.org/imagingTechnique", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Imaging technique used." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4647" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/imagingTechnique" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "imagingTechnique" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4649" + } ] +}, { + "@id" : "https://schema.org/inAlbum", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The album to which this recording belongs." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4654" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/inAlbum" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "inAlbum" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4656" + } ] +}, { + "@id" : "https://schema.org/inBroadcastLineup", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The CableOrSatelliteService offering the channel." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4661" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/inBroadcastLineup" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "inBroadcastLineup" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4663" + } ] +}, { + "@id" : "https://schema.org/inChI", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Non-proprietary identifier for molecular entity that can be used in printed and electronic data sources thus enabling easier linking of diverse data compilations." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4668" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/inChI" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "inChI" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4670" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/hasRepresentation" + } ] +}, { + "@id" : "https://schema.org/inChIKey", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "InChIKey is a hashed version of the full InChI (using the SHA-256 algorithm)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4674" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/inChIKey" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "inChIKey" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4676" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/hasRepresentation" + } ] +}, { + "@id" : "https://schema.org/inCodeSet", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A CategoryCodeSet that contains this category code." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4680" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/inCodeSet" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "inCodeSet" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4682" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/inDefinedTermSet" + } ] +}, { + "@id" : "https://schema.org/inDefinedTermSet", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A DefinedTermSet that contains this term." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4687" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/inDefinedTermSet" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "inDefinedTermSet" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4689" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/isPartOf" + } ] +}, { + "@id" : "https://schema.org/inLanguage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The language of the content or performance or used in an action. Please use one of the language codes from the IETF BCP 47 standard. See also availableLanguage." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4694" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/inLanguage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "inLanguage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4702" + } ] +}, { + "@id" : "https://schema.org/inPlaylist", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The playlist to which this recording belongs." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4707" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/inPlaylist" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "inPlaylist" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4709" + } ] +}, { + "@id" : "https://schema.org/inProductGroupWithID", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the productGroupID for a ProductGroup that this product isVariantOf." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4714" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/inProductGroupWithID" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "inProductGroupWithID" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4716" + } ] +}, { + "@id" : "https://schema.org/inStoreReturnsOffered", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Are in-store returns offered? (For more advanced return methods use the returnMethod property.)" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4720" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/inStoreReturnsOffered" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "inStoreReturnsOffered" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4722" + } ] +}, { + "@id" : "https://schema.org/inSupportOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Qualification, candidature, degree, application that Thesis supports." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4724" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/inSupportOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "inSupportOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4726" + } ] +}, { + "@id" : "https://schema.org/incentiveCompensation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Description of bonus and commission compensation aspects of the job." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4730" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/incentiveCompensation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "incentiveCompensation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4732" + } ] +}, { + "@id" : "https://schema.org/incentives", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Description of bonus and commission compensation aspects of the job." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4736" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/incentives" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "incentives" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4738" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/incentiveCompensation" + } ] +}, { + "@id" : "https://schema.org/includedComposition", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Smaller compositions included in this work (e.g. a movement in a symphony)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4742" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/includedComposition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "includedComposition" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4744" + } ] +}, { + "@id" : "https://schema.org/includedDataCatalog", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A data catalog which contains this dataset (this property was previously 'catalog', preferred name is now 'includedInDataCatalog')." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4749" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/includedDataCatalog" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "includedDataCatalog" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4751" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/includedInDataCatalog" + } ] +}, { + "@id" : "https://schema.org/includedInDataCatalog", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A data catalog which contains this dataset." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4756" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/includedInDataCatalog" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "includedInDataCatalog" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4758" + } ] +}, { + "@id" : "https://schema.org/includedInHealthInsurancePlan", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The insurance plans that cover this drug." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4763" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/includedInHealthInsurancePlan" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "includedInHealthInsurancePlan" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4765" + } ] +}, { + "@id" : "https://schema.org/includedRiskFactor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A modifiable or non-modifiable risk factor included in the calculation, e.g. age, coexisting condition." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4770" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/includedRiskFactor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "includedRiskFactor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4772" + } ] +}, { + "@id" : "https://schema.org/includesAttraction", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Attraction located at destination." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4777" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/includesAttraction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "includesAttraction" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4779" + } ] +}, { + "@id" : "https://schema.org/includesHealthPlanFormulary", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Formularies covered by this plan." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4784" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/includesHealthPlanFormulary" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "includesHealthPlanFormulary" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4786" + } ] +}, { + "@id" : "https://schema.org/includesHealthPlanNetwork", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Networks covered by this plan." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4791" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/includesHealthPlanNetwork" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "includesHealthPlanNetwork" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4793" + } ] +}, { + "@id" : "https://schema.org/includesObject", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This links to a node or nodes indicating the exact quantity of the products included in an Offer or ProductCollection." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4798" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/includesObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "includesObject" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4802" + } ] +}, { + "@id" : "https://schema.org/increasesRiskOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The condition, complication, etc. influenced by this factor." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4807" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/increasesRiskOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "increasesRiskOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4809" + } ] +}, { + "@id" : "https://schema.org/industry", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The industry associated with the job position." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4814" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/industry" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "industry" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4816" + } ] +}, { + "@id" : "https://schema.org/ineligibleRegion", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

\n\nSee also eligibleRegion." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4821" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ineligibleRegion" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ineligibleRegion" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4827" + } ] +}, { + "@id" : "https://schema.org/infectiousAgent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The actual infectious agent, such as a specific bacterium." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4833" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/infectiousAgent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "infectiousAgent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4835" + } ] +}, { + "@id" : "https://schema.org/infectiousAgentClass", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The class of infectious agent (bacteria, prion, etc.) that causes the disease." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4839" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/infectiousAgentClass" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "infectiousAgentClass" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4841" + } ] +}, { + "@id" : "https://schema.org/ingredients", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A single ingredient used in the recipe, e.g. sugar, flour or garlic." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4846" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ingredients" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ingredients" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4848" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/supply" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/recipeIngredient" + } ] +}, { + "@id" : "https://schema.org/inker", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The individual who traces over the pencil drawings in ink after pencils are complete." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4852" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/inker" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "inker" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4856" + } ] +}, { + "@id" : "https://schema.org/insertion", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The place of attachment of a muscle, or what the muscle moves." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4861" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/insertion" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "insertion" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4863" + } ] +}, { + "@id" : "https://schema.org/installUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "URL at which the app may be installed, if different from the URL of the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4868" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/installUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "installUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4870" + } ] +}, { + "@id" : "https://schema.org/instructor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A person assigned to instruct or provide instructional assistance for the CourseInstance." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4874" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/instructor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "instructor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4876" + } ] +}, { + "@id" : "https://schema.org/instrument", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The object that helped the agent perform the action. E.g. John wrote a book with a pen." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4881" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/instrument" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "instrument" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4883" + } ] +}, { + "@id" : "https://schema.org/intensity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Quantitative measure gauging the degree of force involved in the exercise, for example, heartbeats per minute. May include the velocity of the movement." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4888" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/intensity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "intensity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4890" + } ] +}, { + "@id" : "https://schema.org/interactingDrug", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Another drug that is known to interact with this drug in a way that impacts the effect of this drug or causes a risk to the patient. Note: disease interactions are typically captured as contraindications." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4895" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/interactingDrug" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "interactingDrug" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4897" + } ] +}, { + "@id" : "https://schema.org/interactionCount", + "@type" : [ "http://www.w3.org/2002/07/owl#DatatypeProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This property is deprecated, alongside the UserInteraction types on which it depended." + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/interactionCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "interactionCount" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/interactionStatistic" + } ] +}, { + "@id" : "https://schema.org/interactionService", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The WebSite or SoftwareApplication where the interactions took place." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4902" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/interactionService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "interactionService" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4904" + } ] +}, { + "@id" : "https://schema.org/interactionStatistic", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of interactions for the CreativeWork using the WebSite or SoftwareApplication. The most specific child type of InteractionCounter should be used." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4910" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/interactionStatistic" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "interactionStatistic" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4914" + } ] +}, { + "@id" : "https://schema.org/interactionType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Action representing the type of interaction. For up votes, +1s, etc. use LikeAction. For down votes use DislikeAction. Otherwise, use the most specific Action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4919" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/interactionType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "interactionType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4921" + } ] +}, { + "@id" : "https://schema.org/interactivityType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The predominant mode of learning supported by the learning resource. Acceptable values are 'active', 'expositive', or 'mixed'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4926" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/interactivityType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "interactivityType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4928" + } ] +}, { + "@id" : "https://schema.org/interestRate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The interest rate, charged or paid, applicable to the financial product. Note: This is different from the calculated annualPercentageRate." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4932" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/interestRate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "interestRate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4934" + } ] +}, { + "@id" : "https://schema.org/interpretedAsClaim", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Used to indicate a specific claim contained, implied, translated or refined from the content of a MediaObject or other CreativeWork. The interpreting party can be indicated using claimInterpreter." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4940" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/interpretedAsClaim" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "interpretedAsClaim" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4943" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/description" + } ] +}, { + "@id" : "https://schema.org/inventoryLevel", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The current approximate inventory level for the item or items." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4948" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/inventoryLevel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "inventoryLevel" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4952" + } ] +}, { + "@id" : "https://schema.org/inverseOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Relates a property to a property that is its inverse. Inverse properties relate the same pairs of items to each other, but in reversed direction. For example, the 'alumni' and 'alumniOf' properties are inverseOf each other. Some properties don't have explicit inverses; in these situations RDFa and JSON-LD syntax for reverse properties can be used." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4957" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://meta.schema.org/inverseOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "inverseOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4959" + } ] +}, { + "@id" : "https://schema.org/isAcceptingNewPatients", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Whether the provider is accepting new patients." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4964" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/isAcceptingNewPatients" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isAcceptingNewPatients" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4966" + } ] +}, { + "@id" : "https://schema.org/isAccessibleForFree", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A flag to signal that the item, event, or place is accessible for free." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4968" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isAccessibleForFree" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isAccessibleForFree" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4972" + } ] +}, { + "@id" : "https://schema.org/isAccessoryOrSparePartFor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A pointer to another product (or multiple products) for which this product is an accessory or spare part." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4974" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isAccessoryOrSparePartFor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isAccessoryOrSparePartFor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4976" + } ] +}, { + "@id" : "https://schema.org/isAvailableGenerically", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "True if the drug is available in a generic form (regardless of name)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4981" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/isAvailableGenerically" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isAvailableGenerically" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4983" + } ] +}, { + "@id" : "https://schema.org/isBasedOn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A resource from which this work is derived or from which it is a modification or adaptation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4985" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isBasedOn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isBasedOn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4987" + } ] +}, { + "@id" : "https://schema.org/isBasedOnUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A resource that was used in the creation of this resource. This term can be repeated for multiple sources. For example, http://example.com/great-multiplication-intro.html." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid4993" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isBasedOnUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isBasedOnUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid4995" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/isBasedOn" + } ] +}, { + "@id" : "https://schema.org/isConsumableFor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A pointer to another product (or multiple products) for which this product is a consumable." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5001" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isConsumableFor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isConsumableFor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5003" + } ] +}, { + "@id" : "https://schema.org/isEncodedByBioChemEntity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Another BioChemEntity encoding by this one." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5008" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/isEncodedByBioChemEntity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isEncodedByBioChemEntity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5010" + } ] +}, { + "@id" : "https://schema.org/isFamilyFriendly", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether this content is family friendly." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5015" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isFamilyFriendly" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isFamilyFriendly" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5019" + } ] +}, { + "@id" : "https://schema.org/isGift", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether the offer was accepted as a gift for someone other than the buyer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5021" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isGift" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isGift" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5023" + } ] +}, { + "@id" : "https://schema.org/isInvolvedInBiologicalProcess", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Biological process this BioChemEntity is involved in; please use PropertyValue if you want to include any evidence." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5025" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/isInvolvedInBiologicalProcess" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isInvolvedInBiologicalProcess" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5027" + } ] +}, { + "@id" : "https://schema.org/isLiveBroadcast", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "True if the broadcast is of a live event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5033" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isLiveBroadcast" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isLiveBroadcast" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5035" + } ] +}, { + "@id" : "https://schema.org/isLocatedInSubcellularLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Subcellular location where this BioChemEntity is located; please use PropertyValue if you want to include any evidence." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5037" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/isLocatedInSubcellularLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isLocatedInSubcellularLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5039" + } ] +}, { + "@id" : "https://schema.org/isPartOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates an item or CreativeWork that this item, or CreativeWork (in some sense), is part of." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5045" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isPartOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isPartOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5047" + } ] +}, { + "@id" : "https://schema.org/isPartOfBioChemEntity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a BioChemEntity that is (in some sense) a part of this BioChemEntity." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5052" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/isPartOfBioChemEntity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isPartOfBioChemEntity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5054" + } ] +}, { + "@id" : "https://schema.org/isPlanForApartment", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates some accommodation that this floor plan describes." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5059" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/isPlanForApartment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isPlanForApartment" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5061" + } ] +}, { + "@id" : "https://schema.org/isProprietary", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "True if this item's name is a proprietary/brand name (vs. generic name)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5066" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/isProprietary" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isProprietary" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5069" + } ] +}, { + "@id" : "https://schema.org/isRelatedTo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A pointer to another, somehow related product (or multiple products)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5071" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isRelatedTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isRelatedTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5074" + } ] +}, { + "@id" : "https://schema.org/isResizable", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Whether the 3DModel allows resizing. For example, room layout applications often do not allow 3DModel elements to be resized to reflect reality." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5080" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/isResizable" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isResizable" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5082" + } ] +}, { + "@id" : "https://schema.org/isSimilarTo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A pointer to another, functionally similar product (or multiple products)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5084" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isSimilarTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isSimilarTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5087" + } ] +}, { + "@id" : "https://schema.org/isUnlabelledFallback", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This can be marked 'true' to indicate that some published DeliveryTimeSettings or ShippingRateSettings are intended to apply to all OfferShippingDetails published by the same merchant, when referenced by a shippingSettingsLink in those settings. It is not meaningful to use a 'true' value for this property alongside a transitTimeLabel (for DeliveryTimeSettings) or shippingLabel (for ShippingRateSettings), since this property is for use with unlabelled settings." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5093" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/isUnlabelledFallback" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isUnlabelledFallback" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5096" + } ] +}, { + "@id" : "https://schema.org/isVariantOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the kind of product that this is a variant of. In the case of ProductModel, this is a pointer (from a ProductModel) to a base product from which this product is a variant. It is safe to infer that the variant inherits all product features from the base model, unless defined locally. This is not transitive. In the case of a ProductGroup, the group description also serves as a template, representing a set of Products that vary on explicitly defined, specific dimensions only (so it defines both a set of variants, as well as which values distinguish amongst those variants). When used with ProductGroup, this property can apply to any Product included in the group." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5098" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isVariantOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isVariantOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5101" + } ] +}, { + "@id" : "https://schema.org/isbn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The ISBN of the book." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5107" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isbn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isbn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5109" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/isicV4", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The International Standard of Industrial Classification of All Economic Activities (ISIC), Revision 4 code for a particular organization, business person, or place." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5113" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isicV4" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isicV4" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5117" + } ] +}, { + "@id" : "https://schema.org/iso6523Code", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An organization identifier as defined in ISO 6523(-1). The identifier should be in the XXXX:YYYYYY:ZZZ or XXXX:YYYYYYformat. Where XXXX is a 4 digit ICD (International Code Designator), YYYYYY is an OID (Organization Identifier) with all formatting characters (dots, dashes, spaces) removed with a maximal length of 35 characters, and ZZZ is an optional OPI (Organization Part Identifier) with a maximum length of 35 characters. The various components (ICD, OID, OPI) are joined with a colon character (ASCII 0x3a). Note that many existing organization identifiers defined as attributes like leiCode (0199), duns (0060) or GLN (0088) can be expressed using ISO-6523. If possible, ISO-6523 codes should be preferred to populating vatID or taxID, as ISO identifiers are less ambiguous." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5121" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/iso6523Code" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "iso6523Code" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5123" + } ] +}, { + "@id" : "https://schema.org/isrcCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The International Standard Recording Code for the recording." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5127" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/isrcCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "isrcCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5129" + } ] +}, { + "@id" : "https://schema.org/issn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The International Standard Serial Number (ISSN) that identifies this serial publication. You can repeat this property to identify different formats of, or the linking ISSN (ISSN-L) for, this serial publication." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5133" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/issn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "issn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5138" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/issueNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Identifies the issue of publication; for example, \"iii\" or \"2\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5142" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/issueNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "issueNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5144" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/position" + } ] +}, { + "@id" : "https://schema.org/issuedBy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The organization issuing the item, for example a Permit, Ticket, or Certification." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5149" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/issuedBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "issuedBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5153" + } ] +}, { + "@id" : "https://schema.org/issuedThrough", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The service through which the permit was granted." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5158" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/issuedThrough" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "issuedThrough" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5160" + } ] +}, { + "@id" : "https://schema.org/iswcCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The International Standard Musical Work Code for the composition." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5165" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/iswcCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "iswcCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5167" + } ] +}, { + "@id" : "https://schema.org/item", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An entity represented by an entry in a list or data feed (e.g. an 'artist' in a list of 'artists')." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5171" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/item" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "item" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5174" + } ] +}, { + "@id" : "https://schema.org/itemCondition", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A predefined value from OfferItemCondition specifying the condition of the product or service, or the products or services included in the offer. Also used for product return policies to specify the condition of products accepted for returns." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5179" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/itemCondition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "itemCondition" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5184" + } ] +}, { + "@id" : "https://schema.org/itemDefectReturnFees", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of return fees for returns of defect products." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5189" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/itemDefectReturnFees" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "itemDefectReturnFees" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5191" + } ] +}, { + "@id" : "https://schema.org/itemDefectReturnLabelSource", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The method (from an enumeration) by which the customer obtains a return shipping label for a defect product." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5196" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/itemDefectReturnLabelSource" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "itemDefectReturnLabelSource" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5198" + } ] +}, { + "@id" : "https://schema.org/itemDefectReturnShippingFeesAmount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Amount of shipping costs for defect product returns. Applicable when property itemDefectReturnFees equals ReturnShippingFees." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5203" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/itemDefectReturnShippingFeesAmount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "itemDefectReturnShippingFeesAmount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5205" + } ] +}, { + "@id" : "https://schema.org/itemListElement", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For itemListElement values, you can use simple strings (e.g. \"Peter\", \"Paul\", \"Mary\"), existing entities, or use ListItem.

\n\nText values are best if the elements in the list are plain strings. Existing entities are best for a simple, unordered list of existing things in your data. ListItem is used with ordered lists when you want to provide additional context about the element in that list or when the same item might be in different places in different lists.

\n\nNote: The order of elements in your mark-up is not sufficient for indicating the order or elements. Use ListItem with a 'position' property in such cases." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5210" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/itemListElement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "itemListElement" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5212" + } ] +}, { + "@id" : "https://schema.org/itemListOrder", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Type of ordering (e.g. Ascending, Descending, Unordered)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5218" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/itemListOrder" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "itemListOrder" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5220" + } ] +}, { + "@id" : "https://schema.org/itemLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Current location of the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5225" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/itemLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "itemLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5227" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/location" + } ] +}, { + "@id" : "https://schema.org/itemOffered", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An item being offered (or demanded). The transactional nature of the offer or demand is documented using businessFunction, e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5233" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/itemOffered" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "itemOffered" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5236" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/offers" + } ] +}, { + "@id" : "https://schema.org/itemReviewed", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The item that is being reviewed/rated." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5247" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/itemReviewed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "itemReviewed" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5250" + } ] +}, { + "@id" : "https://schema.org/itemShipped", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Item(s) being shipped." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5255" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/itemShipped" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "itemShipped" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5257" + } ] +}, { + "@id" : "https://schema.org/itinerary", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Destination(s) ( Place ) that make up a trip. For a trip where destination order is important use ItemList to specify that order (see examples)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5262" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/itinerary" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "itinerary" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5264" + } ] +}, { + "@id" : "https://schema.org/iupacName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Systematic method of naming chemical compounds as recommended by the International Union of Pure and Applied Chemistry (IUPAC)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5270" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/iupacName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "iupacName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5272" + } ] +}, { + "@id" : "https://schema.org/jobBenefits", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Description of benefits associated with the job." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5276" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/jobBenefits" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "jobBenefits" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5278" + } ] +}, { + "@id" : "https://schema.org/jobImmediateStart", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An indicator as to whether a position is available for an immediate start." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5282" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/jobImmediateStart" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "jobImmediateStart" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5284" + } ] +}, { + "@id" : "https://schema.org/jobLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A (typically single) geographic location associated with the job position." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5286" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/jobLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "jobLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5288" + } ] +}, { + "@id" : "https://schema.org/jobLocationType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A description of the job location (e.g. TELECOMMUTE for telecommute jobs)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5293" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/jobLocationType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "jobLocationType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5295" + } ] +}, { + "@id" : "https://schema.org/jobStartDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date on which a successful applicant for this job would be expected to start work. Choose a specific date in the future or use the jobImmediateStart property to indicate the position is to be filled as soon as possible." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5299" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/jobStartDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "jobStartDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5301" + } ] +}, { + "@id" : "https://schema.org/jobTitle", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The job title of the person (for example, Financial Manager)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5306" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/jobTitle" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "jobTitle" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5308" + } ] +}, { + "@id" : "https://schema.org/jurisdiction", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a legal jurisdiction, e.g. of some legislation, or where some government service is based." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5313" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/jurisdiction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "jurisdiction" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5316" + } ] +}, { + "@id" : "https://schema.org/keywords", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Keywords or tags used to describe some item. Multiple textual entries in a keywords list are typically delimited by commas, or by repeating the property." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5321" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/keywords" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "keywords" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5327" + } ] +}, { + "@id" : "https://schema.org/knownVehicleDamages", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A textual description of known damages, both repaired and unrepaired." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5332" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/knownVehicleDamages" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "knownVehicleDamages" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5334" + } ] +}, { + "@id" : "https://schema.org/knows", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The most generic bi-directional social/work relation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5338" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/knows" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "knows" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5340" + } ] +}, { + "@id" : "https://schema.org/knowsAbout", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Of a Person, and less typically of an Organization, to indicate a topic that is known about - suggesting possible expertise but not implying it. We do not distinguish skill levels here, or relate this to educational content, events, objectives or JobPosting descriptions." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5345" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/knowsAbout" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "knowsAbout" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5348" + } ] +}, { + "@id" : "https://schema.org/knowsLanguage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Of a Person, and less typically of an Organization, to indicate a known language. We do not distinguish skill levels or reading/writing/speaking/signing here. Use language codes from the IETF BCP 47 standard." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5353" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/knowsLanguage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "knowsLanguage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5356" + } ] +}, { + "@id" : "https://schema.org/labelDetails", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Link to the drug's label details." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5361" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/labelDetails" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "labelDetails" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5363" + } ] +}, { + "@id" : "https://schema.org/landlord", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of participant. The owner of the real estate property." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5367" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/landlord" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "landlord" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5369" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/participant" + } ] +}, { + "@id" : "https://schema.org/language", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of instrument. The language used on this action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5375" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/language" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "language" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5378" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/instrument" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/inLanguage" + } ] +}, { + "@id" : "https://schema.org/lastReviewed", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Date on which the content on this web page was last reviewed for accuracy and/or completeness." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5383" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/lastReviewed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "lastReviewed" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5385" + } ] +}, { + "@id" : "https://schema.org/latitude", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The latitude of a location. For example 37.42242 (WGS 84)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5387" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/latitude" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "latitude" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5390" + } ] +}, { + "@id" : "https://schema.org/layoutImage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A schematic image showing the floorplan layout." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5395" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/layoutImage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "layoutImage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5397" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/image" + } ] +}, { + "@id" : "https://schema.org/learningResourceType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The predominant type or kind characterizing the learning resource. For example, 'presentation', 'handout'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5402" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/learningResourceType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "learningResourceType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5405" + } ] +}, { + "@id" : "https://schema.org/leaseLength", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Length of the lease for some Accommodation, either particular to some Offer or in some cases intrinsic to the property." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5410" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/leaseLength" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "leaseLength" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5414" + } ] +}, { + "@id" : "https://schema.org/legalName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The official name of the organization, e.g. the registered company name." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5420" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/legalName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legalName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5422" + } ] +}, { + "@id" : "https://schema.org/legalStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The drug or supplement's legal status, including any controlled substance schedules that apply." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5426" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/legalStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legalStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5430" + } ] +}, { + "@id" : "https://schema.org/legislationApplies", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates that this legislation (or part of a legislation) somehow transfers another legislation in a different legislative context. This is an informative link, and it has no legal value. For legally-binding links of transposition, use the legislationTransposes property. For example an informative consolidated law of a European Union's member state \"applies\" the consolidated version of the European Directive implemented in it." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5436" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/legislationApplies" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legislationApplies" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5438" + } ] +}, { + "@id" : "https://schema.org/legislationChanges", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Another legislation that this legislation changes. This encompasses the notions of amendment, replacement, correction, repeal, or other types of change. This may be a direct change (textual or non-textual amendment) or a consequential or indirect change. The property is to be used to express the existence of a change relationship between two acts rather than the existence of a consolidated version of the text that shows the result of the change. For consolidation relationships, use the legislationConsolidates property." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5443" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/legislationChanges" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legislationChanges" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5445" + } ] +}, { + "@id" : "https://schema.org/legislationConsolidates", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates another legislation taken into account in this consolidated legislation (which is usually the product of an editorial process that revises the legislation). This property should be used multiple times to refer to both the original version or the previous consolidated version, and to the legislations making the change." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5450" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/legislationConsolidates" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legislationConsolidates" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5452" + } ] +}, { + "@id" : "https://schema.org/legislationDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date of adoption or signature of the legislation. This is the date at which the text is officially aknowledged to be a legislation, even though it might not even be published or in force." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5457" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/legislationDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legislationDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5459" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/dateCreated" + } ] +}, { + "@id" : "https://schema.org/legislationDateVersion", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The point-in-time at which the provided description of the legislation is valid (e.g.: when looking at the law on the 2016-04-07 (= dateVersion), I get the consolidation of 2015-04-12 of the \"National Insurance Contributions Act 2015\")" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5461" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/legislationDateVersion" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legislationDateVersion" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5463" + } ] +}, { + "@id" : "https://schema.org/legislationIdentifier", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An identifier for the legislation. This can be either a string-based identifier, like the CELEX at EU level or the NOR in France, or a web-based, URL/URI identifier, like an ELI (European Legislation Identifier) or an URN-Lex." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5465" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/legislationIdentifier" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legislationIdentifier" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5467" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/legislationJurisdiction", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The jurisdiction from which the legislation originates." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5471" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/legislationJurisdiction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legislationJurisdiction" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5473" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/jurisdiction" + }, { + "@id" : "https://schema.org/spatialCoverage" + } ] +}, { + "@id" : "https://schema.org/legislationLegalForce", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Whether the legislation is currently in force, not in force, or partially in force." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5478" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/legislationLegalForce" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legislationLegalForce" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5480" + } ] +}, { + "@id" : "https://schema.org/legislationLegalValue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The legal value of this legislation file. The same legislation can be written in multiple files with different legal values. Typically a digitally signed PDF have a \"stronger\" legal value than the HTML file of the same act." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5485" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/legislationLegalValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legislationLegalValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5487" + } ] +}, { + "@id" : "https://schema.org/legislationPassedBy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The person or organization that originally passed or made the law: typically parliament (for primary legislation) or government (for secondary legislation). This indicates the \"legal author\" of the law, as opposed to its physical author." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5492" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/legislationPassedBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legislationPassedBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5494" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/creator" + } ] +}, { + "@id" : "https://schema.org/legislationResponsible", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An individual or organization that has some kind of responsibility for the legislation. Typically the ministry who is/was in charge of elaborating the legislation, or the adressee for potential questions about the legislation once it is published." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5500" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/legislationResponsible" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legislationResponsible" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5502" + } ] +}, { + "@id" : "https://schema.org/legislationTransposes", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates that this legislation (or part of legislation) fulfills the objectives set by another legislation, by passing appropriate implementation measures. Typically, some legislations of European Union's member states or regions transpose European Directives. This indicates a legally binding link between the 2 legislations." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5508" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/legislationTransposes" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legislationTransposes" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5510" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/legislationApplies" + } ] +}, { + "@id" : "https://schema.org/legislationType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of the legislation. Examples of values are \"law\", \"act\", \"directive\", \"decree\", \"regulation\", \"statutory instrument\", \"loi organique\", \"règlement grand-ducal\", etc., depending on the country." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5515" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/legislationType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "legislationType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5517" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/genre" + } ] +}, { + "@id" : "https://schema.org/leiCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An organization identifier that uniquely identifies a legal entity as defined in ISO 17442." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5522" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/leiCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "leiCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5524" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/lender", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of participant. The person that lends the object being borrowed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5528" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/lender" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "lender" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5530" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/participant" + } ] +}, { + "@id" : "https://schema.org/lesser", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This ordering relation for qualitative values indicates that the subject is lesser than the object." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5536" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/lesser" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "lesser" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5538" + } ] +}, { + "@id" : "https://schema.org/lesserOrEqual", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This ordering relation for qualitative values indicates that the subject is lesser than or equal to the object." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5543" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/lesserOrEqual" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "lesserOrEqual" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5545" + } ] +}, { + "@id" : "https://schema.org/letterer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The individual who adds lettering, including speech balloons and sound effects, to artwork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5550" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/letterer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "letterer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5554" + } ] +}, { + "@id" : "https://schema.org/license", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A license document that applies to this content, typically indicated by URL." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5559" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/license" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "license" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5561" + } ] +}, { + "@id" : "https://schema.org/line", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A line is a point-to-point path consisting of two or more points. A line is expressed as a series of two or more point objects separated by space." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5566" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/line" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "line" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5568" + } ] +}, { + "@id" : "https://schema.org/linkRelationship", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the relationship type of a Web link." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5572" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/linkRelationship" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "linkRelationship" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5574" + } ] +}, { + "@id" : "https://schema.org/liveBlogUpdate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An update to the LiveBlog." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5578" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/liveBlogUpdate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "liveBlogUpdate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5580" + } ] +}, { + "@id" : "https://schema.org/loanMortgageMandateAmount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Amount of mortgage mandate that can be converted into a proper mortgage at a later stage." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5585" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/loanMortgageMandateAmount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "loanMortgageMandateAmount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5587" + } ] +}, { + "@id" : "https://schema.org/loanPaymentAmount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The amount of money to pay in a single payment." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5592" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/loanPaymentAmount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "loanPaymentAmount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5594" + } ] +}, { + "@id" : "https://schema.org/loanPaymentFrequency", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Frequency of payments due, i.e. number of months between payments. This is defined as a frequency, i.e. the reciprocal of a period of time." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5599" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/loanPaymentFrequency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "loanPaymentFrequency" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5601" + } ] +}, { + "@id" : "https://schema.org/loanRepaymentForm", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A form of paying back money previously borrowed from a lender. Repayment usually takes the form of periodic payments that normally include part principal plus interest in each payment." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5603" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/loanRepaymentForm" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "loanRepaymentForm" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5605" + } ] +}, { + "@id" : "https://schema.org/loanTerm", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The duration of the loan or credit agreement." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5610" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/loanTerm" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "loanTerm" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5612" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/duration" + } ] +}, { + "@id" : "https://schema.org/loanType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of a loan or credit." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5617" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/loanType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "loanType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5619" + } ] +}, { + "@id" : "https://schema.org/location", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The location of, for example, where an event is happening, where an organization is located, or where an action takes place." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5623" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/location" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "location" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5628" + } ] +}, { + "@id" : "https://schema.org/locationCreated", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The location where the CreativeWork was created, which may not be the same as the location depicted in the CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5635" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/locationCreated" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "locationCreated" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5637" + } ] +}, { + "@id" : "https://schema.org/lodgingUnitDescription", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A full description of the lodging unit." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5642" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/lodgingUnitDescription" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "lodgingUnitDescription" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5644" + } ] +}, { + "@id" : "https://schema.org/lodgingUnitType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Textual description of the unit type (including suite vs. room, size of bed, etc.)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5648" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/lodgingUnitType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "lodgingUnitType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5650" + } ] +}, { + "@id" : "https://schema.org/logo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An associated logo." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5655" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/logo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "logo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5662" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/image" + } ] +}, { + "@id" : "https://schema.org/longitude", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The longitude of a location. For example -122.08585 (WGS 84)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5667" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/longitude" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "longitude" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5670" + } ] +}, { + "@id" : "https://schema.org/loser", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of participant. The loser of the action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5675" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/loser" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "loser" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5677" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/participant" + } ] +}, { + "@id" : "https://schema.org/lowPrice", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The lowest price of all offers available.

\n\nUsage guidelines:

\n\n
    \n
  • Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
  • \n
  • Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5682" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/lowPrice" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "lowPrice" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5684" + } ] +}, { + "@id" : "https://schema.org/lyricist", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The person who wrote the words." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5689" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/lyricist" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "lyricist" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5691" + } ] +}, { + "@id" : "https://schema.org/lyrics", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The words in the song." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5696" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/lyrics" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "lyrics" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5698" + } ] +}, { + "@id" : "https://schema.org/mainContentOfPage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates if this web page element is the main subject of the page." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5703" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/mainContentOfPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "mainContentOfPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5705" + } ] +}, { + "@id" : "https://schema.org/mainEntity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the primary entity described in some page or other CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5710" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/mainEntity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "mainEntity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5712" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/about" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/mainEntityOfPage" + } ] +}, { + "@id" : "https://schema.org/mainEntityOfPage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a page (or other CreativeWork) for which this thing is the main entity being described. See background notes for details." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5717" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/mainEntityOfPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "mainEntityOfPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5719" + } ] +}, { + "@id" : "https://schema.org/maintainer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A maintainer of a Dataset, software package (SoftwareApplication), or other Project. A maintainer is a Person or Organization that manages contributions to, and/or publication of, some (typically complex) artifact. It is common for distributions of software and data to be based on \"upstream\" sources. When maintainer is applied to a specific version of something e.g. a particular version or packaging of a Dataset, it is always possible that the upstream source has a different maintainer. The isBasedOn property can be used to indicate such relationships between datasets to make the different maintenance roles clear. Similarly in the case of software, a package may have dedicated maintainers working on integration into software distributions such as Ubuntu, as well as upstream maintainers of the underlying work." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5724" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/maintainer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "maintainer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5726" + } ] +}, { + "@id" : "https://schema.org/makesOffer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A pointer to products or services offered by the organization or person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5732" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/makesOffer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "makesOffer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5735" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/offeredBy" + } ] +}, { + "@id" : "https://schema.org/manufacturer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The manufacturer of the product." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5740" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/manufacturer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "manufacturer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5742" + } ] +}, { + "@id" : "https://schema.org/map", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A URL to a map of the place." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5747" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/map" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "map" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5749" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/hasMap" + } ] +}, { + "@id" : "https://schema.org/mapType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the kind of Map, from the MapCategoryType Enumeration." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5753" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/mapType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "mapType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5755" + } ] +}, { + "@id" : "https://schema.org/maps", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A URL to a map of the place." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5760" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/maps" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "maps" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5762" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/hasMap" + } ] +}, { + "@id" : "https://schema.org/marginOfError", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A marginOfError for an Observation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5766" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/marginOfError" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "marginOfError" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5768" + } ] +}, { + "@id" : "https://schema.org/masthead", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For a NewsMediaOrganization, a link to the masthead page or a page listing top editorial management." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5773" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/masthead" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "masthead" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5775" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/publishingPrinciples" + } ] +}, { + "@id" : "https://schema.org/material", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A material that something is made from, e.g. leather, wool, cotton, paper." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5780" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/material" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "material" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5783" + } ] +}, { + "@id" : "https://schema.org/materialExtent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The quantity of the materials being described or an expression of the physical space they occupy." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5788" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/materialExtent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "materialExtent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5790" + } ] +}, { + "@id" : "https://schema.org/mathExpression", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A mathematical expression (e.g. 'x^2-3x=0') that may be solved for a specific variable, simplified, or transformed. This can take many formats, e.g. LaTeX, Ascii-Math, or math as you would write with a keyboard." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5795" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/mathExpression" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "mathExpression" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5797" + } ] +}, { + "@id" : "https://schema.org/maxPrice", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The highest price if the price is a range." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5802" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/maxPrice" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "maxPrice" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5804" + } ] +}, { + "@id" : "https://schema.org/maxValue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The upper value of some characteristic or property." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5806" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/maxValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "maxValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5811" + } ] +}, { + "@id" : "https://schema.org/maximumAttendeeCapacity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The total number of individuals that may attend an event or venue." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5813" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/maximumAttendeeCapacity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "maximumAttendeeCapacity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5816" + } ] +}, { + "@id" : "https://schema.org/maximumEnrollment", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The maximum number of students who may be enrolled in the program." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5818" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/maximumEnrollment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "maximumEnrollment" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5820" + } ] +}, { + "@id" : "https://schema.org/maximumIntake", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Recommended intake of this supplement for a given population as defined by a specific recommending authority." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5822" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/maximumIntake" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "maximumIntake" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5827" + } ] +}, { + "@id" : "https://schema.org/maximumPhysicalAttendeeCapacity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The maximum physical attendee capacity of an Event whose eventAttendanceMode is OfflineEventAttendanceMode (or the offline aspects, in the case of a MixedEventAttendanceMode)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5832" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/maximumPhysicalAttendeeCapacity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "maximumPhysicalAttendeeCapacity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5834" + } ] +}, { + "@id" : "https://schema.org/maximumVirtualAttendeeCapacity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The maximum virtual attendee capacity of an Event whose eventAttendanceMode is OnlineEventAttendanceMode (or the online aspects, in the case of a MixedEventAttendanceMode)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5836" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/maximumVirtualAttendeeCapacity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "maximumVirtualAttendeeCapacity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5838" + } ] +}, { + "@id" : "https://schema.org/mealService", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Description of the meals that will be provided or available for purchase." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5840" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/mealService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "mealService" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5842" + } ] +}, { + "@id" : "https://schema.org/measuredProperty", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The measuredProperty of an Observation, typically via its StatisticalVariable. There are various kinds of applicable Property: a schema.org property, a property from other RDF-compatible systems, e.g. W3C RDF Data Cube, Data Commons, Wikidata, or schema.org extensions such as GS1's." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5846" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/measuredProperty" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "measuredProperty" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5849" + } ] +}, { + "@id" : "https://schema.org/measurementDenominator", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Identifies the denominator variable when an observation represents a ratio or percentage." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5854" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/measurementDenominator" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "measurementDenominator" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5857" + } ] +}, { + "@id" : "https://schema.org/measurementMethod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A subproperty of measurementTechnique that can be used for specifying specific methods, in particular via MeasurementMethodEnum." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5862" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/measurementMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "measurementMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5869" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/measurementTechnique" + } ] +}, { + "@id" : "https://schema.org/measurementQualifier", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Provides additional qualification to an observation. For example, a GDP observation measures the Nominal value." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5875" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/measurementQualifier" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "measurementQualifier" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5878" + } ] +}, { + "@id" : "https://schema.org/measurementTechnique", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A technique, method or technology used in an Observation, StatisticalVariable or Dataset (or DataDownload, DataCatalog), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using variableMeasured; for Observation, a StatisticalVariable). Often but not necessarily each variableMeasured will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and \"knowledge graphs\". In that case the subproperty of variableMeasured called measuredProperty is applicable.

\n\nThe measurementTechnique property helps when extra clarification is needed about how a measuredProperty was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery.

\n\nFor example, if variableMeasured is: molecule concentration, measurementTechnique could be: \"mass spectrometry\" or \"nmr spectroscopy\" or \"colorimetry\" or \"immunofluorescence\". If the variableMeasured is \"depression rating\", the measurementTechnique could be \"Zung Scale\" or \"HAM-D\" or \"Beck Depression Inventory\".

\n\nIf there are several variableMeasured properties recorded for some given data object, use a PropertyValue for each variableMeasured and attach the corresponding measurementTechnique. The value can also be from an enumeration, organized as a MeasurementMetholdEnumeration." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5883" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/measurementTechnique" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "measurementTechnique" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5890" + } ] +}, { + "@id" : "https://schema.org/mechanismOfAction", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The specific biochemical interaction through which this drug or supplement produces its pharmacological effect." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5896" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/mechanismOfAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "mechanismOfAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5899" + } ] +}, { + "@id" : "https://schema.org/mediaAuthenticityCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a MediaManipulationRatingEnumeration classification of a media object (in the context of how it was published or shared)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5903" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/mediaAuthenticityCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "mediaAuthenticityCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5905" + } ] +}, { + "@id" : "https://schema.org/mediaItemAppearance", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "In the context of a MediaReview, indicates specific media item(s) that are grouped using a MediaReviewItem." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5910" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/mediaItemAppearance" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "mediaItemAppearance" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5912" + } ] +}, { + "@id" : "https://schema.org/median", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The median value." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5917" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/median" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "median" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5919" + } ] +}, { + "@id" : "https://schema.org/medicalAudience", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Medical audience for page." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5921" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/medicalAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "medicalAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5923" + } ] +}, { + "@id" : "https://schema.org/medicalSpecialty", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical specialty of the provider." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5929" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/medicalSpecialty" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "medicalSpecialty" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5934" + } ] +}, { + "@id" : "https://schema.org/medicineSystem", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The system of medicine that includes this MedicalEntity, for example 'evidence-based', 'homeopathic', 'chiropractic', etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5939" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/medicineSystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "medicineSystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5941" + } ] +}, { + "@id" : "https://schema.org/meetsEmissionStandard", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates that the vehicle meets the respective emission standard." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5946" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/meetsEmissionStandard" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "meetsEmissionStandard" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5948" + } ] +}, { + "@id" : "https://schema.org/member", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A member of an Organization or a ProgramMembership. Organizations can be members of organizations; ProgramMembership is typically for individuals." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5953" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/member" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "member" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5956" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/memberOf" + } ] +}, { + "@id" : "https://schema.org/memberOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An Organization (or ProgramMembership) to which this Person or Organization belongs." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5962" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/memberOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "memberOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5965" + } ] +}, { + "@id" : "https://schema.org/members", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A member of this organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5971" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/members" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "members" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5974" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/member" + } ] +}, { + "@id" : "https://schema.org/membershipNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A unique identifier for the membership." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5980" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/membershipNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "membershipNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5982" + } ] +}, { + "@id" : "https://schema.org/membershipPointsEarned", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of membership points earned by the member. If necessary, the unitText can be used to express the units the points are issued in. (E.g. stars, miles, etc.)" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5986" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/membershipPointsEarned" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "membershipPointsEarned" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5988" + } ] +}, { + "@id" : "https://schema.org/memoryRequirements", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Minimum memory requirements." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid5994" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/memoryRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "memoryRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid5996" + } ] +}, { + "@id" : "https://schema.org/mentions", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates that the CreativeWork contains a reference to, but is not necessarily about a concept." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6000" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/mentions" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "mentions" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6002" + } ] +}, { + "@id" : "https://schema.org/menu", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Either the actual menu as a structured representation, as text, or a URL of the menu." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6007" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/menu" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "menu" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6009" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/hasMenu" + } ] +}, { + "@id" : "https://schema.org/menuAddOn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Additional menu item(s) such as a side dish of salad or side order of fries that can be added to this menu item. Additionally it can be a menu section containing allowed add-on menu items for this menu item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6014" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/menuAddOn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "menuAddOn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6016" + } ] +}, { + "@id" : "https://schema.org/merchant", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "'merchant' is an out-dated term for 'seller'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6022" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/merchant" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "merchant" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6024" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/seller" + } ] +}, { + "@id" : "https://schema.org/merchantReturnDays", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies either a fixed return date or the number of days (from the delivery date) that a product can be returned. Used when the returnPolicyCategory property is specified as MerchantReturnFiniteReturnWindow." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6030" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/merchantReturnDays" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "merchantReturnDays" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6033" + } ] +}, { + "@id" : "https://schema.org/merchantReturnLink", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies a Web page or service by URL, for product returns." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6037" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/merchantReturnLink" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "merchantReturnLink" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6039" + } ] +}, { + "@id" : "https://schema.org/messageAttachment", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A CreativeWork attached to the message." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6043" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/messageAttachment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "messageAttachment" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6045" + } ] +}, { + "@id" : "https://schema.org/mileageFromOdometer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The total distance travelled by the particular vehicle since its initial production, as read from its odometer.

\n\nTypical unit code(s): KMT for kilometers, SMI for statute miles." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6050" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/mileageFromOdometer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "mileageFromOdometer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6052" + } ] +}, { + "@id" : "https://schema.org/minPrice", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The lowest price if the price is a range." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6057" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/minPrice" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "minPrice" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6059" + } ] +}, { + "@id" : "https://schema.org/minValue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The lower value of some characteristic or property." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6061" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/minValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "minValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6066" + } ] +}, { + "@id" : "https://schema.org/minimumPaymentDue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The minimum payment required at this time." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6068" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/minimumPaymentDue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "minimumPaymentDue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6070" + } ] +}, { + "@id" : "https://schema.org/missionCoveragePrioritiesPolicy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For a NewsMediaOrganization, a statement on coverage priorities, including any public agenda or stance on issues." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6076" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/missionCoveragePrioritiesPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "missionCoveragePrioritiesPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6078" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/publishingPrinciples" + } ] +}, { + "@id" : "https://schema.org/mobileUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The mobileUrl property is provided for specific situations in which data consumers need to determine whether one of several provided URLs is a dedicated 'mobile site'.

\n\nTo discourage over-use, and reflecting intial usecases, the property is expected only on Product and Offer, rather than Thing. The general trend in web technology is towards responsive design in which content can be flexibly adapted to a wide range of browsing environments. Pages and sites referenced with the long-established url property should ideally also be usable on a wide variety of devices, including mobile phones. In most cases, it would be pointless and counter productive to attempt to update all url markup to use mobileUrl for more mobile-oriented pages. The property is intended for the case when items (primarily Product and Offer) have extra URLs hosted on an additional \"mobile site\" alongside the main one. It should not be taken as an endorsement of this publication style." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6083" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/mobileUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "mobileUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6086" + } ] +}, { + "@id" : "https://schema.org/model", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The model of the product. Use with the URL of a ProductModel or a textual representation of the model identifier. The URL of the ProductModel can be from an external source. It is recommended to additionally provide strong product identifiers via the gtin8/gtin13/gtin14 and mpn properties." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6090" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/model" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "model" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6092" + } ] +}, { + "@id" : "https://schema.org/modelDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The release date of a vehicle model (often used to differentiate versions of the same make and model)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6097" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/modelDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "modelDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6099" + } ] +}, { + "@id" : "https://schema.org/modifiedTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date and time the reservation was modified." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6101" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/modifiedTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "modifiedTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6103" + } ] +}, { + "@id" : "https://schema.org/molecularFormula", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The empirical formula is the simplest whole number ratio of all the atoms in a molecule." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6105" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/molecularFormula" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "molecularFormula" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6107" + } ] +}, { + "@id" : "https://schema.org/molecularWeight", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This is the molecular weight of the entity being described, not of the parent. Units should be included in the form '<Number> <unit>', for example '12 amu' or as '<QuantitativeValue>." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6111" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/molecularWeight" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "molecularWeight" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6113" + } ] +}, { + "@id" : "https://schema.org/monoisotopicMolecularWeight", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The monoisotopic mass is the sum of the masses of the atoms in a molecule using the unbound, ground-state, rest mass of the principal (most abundant) isotope for each element instead of the isotopic average mass. Please include the units in the form '<Number> <unit>', for example '770.230488 g/mol' or as '<QuantitativeValue>." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6118" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/monoisotopicMolecularWeight" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "monoisotopicMolecularWeight" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6120" + } ] +}, { + "@id" : "https://schema.org/monthlyMinimumRepaymentAmount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The minimum payment is the lowest amount of money that one is required to pay on a credit card statement each month." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6125" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/monthlyMinimumRepaymentAmount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "monthlyMinimumRepaymentAmount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6127" + } ] +}, { + "@id" : "https://schema.org/monthsOfExperience", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the minimal number of months of experience required for a position." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6133" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/monthsOfExperience" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "monthsOfExperience" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6135" + } ] +}, { + "@id" : "https://schema.org/mpn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Manufacturer Part Number (MPN) of the product, or the product to which the offer refers." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6137" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/mpn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "mpn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6141" + } ] +}, { + "@id" : "https://schema.org/multipleValues", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Whether multiple values are allowed for the property. Default is false." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6145" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/multipleValues" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "multipleValues" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6147" + } ] +}, { + "@id" : "https://schema.org/muscleAction", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The movement the muscle generates." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6149" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/muscleAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "muscleAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6151" + } ] +}, { + "@id" : "https://schema.org/musicArrangement", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An arrangement derived from the composition." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6155" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/musicArrangement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "musicArrangement" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6157" + } ] +}, { + "@id" : "https://schema.org/musicBy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The composer of the soundtrack." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6162" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/musicBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "musicBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6172" + } ] +}, { + "@id" : "https://schema.org/musicCompositionForm", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of composition (e.g. overture, sonata, symphony, etc.)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6178" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/musicCompositionForm" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "musicCompositionForm" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6180" + } ] +}, { + "@id" : "https://schema.org/musicGroupMember", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A member of a music group—for example, John, Paul, George, or Ringo." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6184" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/musicGroupMember" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "musicGroupMember" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6186" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/member" + } ] +}, { + "@id" : "https://schema.org/musicReleaseFormat", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Format of this release (the type of recording media used, i.e. compact disc, digital media, LP, etc.)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6191" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/musicReleaseFormat" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "musicReleaseFormat" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6193" + } ] +}, { + "@id" : "https://schema.org/musicalKey", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The key, mode, or scale this composition uses." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6198" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/musicalKey" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "musicalKey" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6200" + } ] +}, { + "@id" : "https://schema.org/naics", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The North American Industry Classification System (NAICS) code for a particular organization or business person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6204" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/naics" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "naics" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6207" + } ] +}, { + "@id" : "https://schema.org/name", + "@type" : [ "http://www.w3.org/2002/07/owl#AnnotationProperty", "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The name of the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6211" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/name" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "name" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6213" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "http://www.w3.org/2000/01/rdf-schema#label" + } ] +}, { + "@id" : "https://schema.org/namedPosition", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A position played, performed or filled by a person or organization, as part of an organization. For example, an athlete in a SportsTeam might play in the position named 'Quarterback'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6217" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/namedPosition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "namedPosition" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6219" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/roleName" + } ] +}, { + "@id" : "https://schema.org/nationality", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Nationality of the person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6223" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/nationality" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "nationality" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6225" + } ] +}, { + "@id" : "https://schema.org/naturalProgression", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The expected progression of the condition if it is not treated and allowed to progress naturally." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6230" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/naturalProgression" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "naturalProgression" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6232" + } ] +}, { + "@id" : "https://schema.org/negativeNotes", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Provides negative considerations regarding something, most typically in pro/con lists for reviews (alongside positiveNotes). For symmetry

\n\nIn the case of a Review, the property describes the itemReviewed from the perspective of the review; in the case of a Product, the product itself is being described. Since product descriptions \ntend to emphasise positive claims, it may be relatively unusual to find negativeNotes used in this way. Nevertheless for the sake of symmetry, negativeNotes can be used on Product.

\n\nThe property values can be expressed either as unstructured text (repeated as necessary), or if ordered, as a list (in which case the most negative is at the beginning of the list)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6236" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/negativeNotes" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "negativeNotes" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6239" + } ] +}, { + "@id" : "https://schema.org/nerve", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The underlying innervation associated with the muscle." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6246" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/nerve" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "nerve" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6248" + } ] +}, { + "@id" : "https://schema.org/nerveMotor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The neurological pathway extension that involves muscle control." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6253" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/nerveMotor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "nerveMotor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6255" + } ] +}, { + "@id" : "https://schema.org/netWorth", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The total financial value of the person as calculated by subtracting assets from liabilities." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6260" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/netWorth" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "netWorth" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6262" + } ] +}, { + "@id" : "https://schema.org/newsUpdatesAndGuidelines", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a page with news updates and guidelines. This could often be (but is not required to be) the main page containing SpecialAnnouncement markup on a site." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6268" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/newsUpdatesAndGuidelines" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "newsUpdatesAndGuidelines" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6270" + } ] +}, { + "@id" : "https://schema.org/nextItem", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A link to the ListItem that follows the current one." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6275" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/nextItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "nextItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6277" + } ] +}, { + "@id" : "https://schema.org/noBylinesPolicy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For a NewsMediaOrganization or other news-related Organization, a statement explaining when authors of articles are not named in bylines." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6282" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/noBylinesPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "noBylinesPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6284" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/publishingPrinciples" + } ] +}, { + "@id" : "https://schema.org/nonEqual", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This ordering relation for qualitative values indicates that the subject is not equal to the object." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6289" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/nonEqual" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "nonEqual" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6291" + } ] +}, { + "@id" : "https://schema.org/nonProprietaryName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The generic name of this drug or supplement." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6296" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/nonProprietaryName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "nonProprietaryName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6299" + } ] +}, { + "@id" : "https://schema.org/nonprofitStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "nonprofitStatus indicates the legal status of a non-profit organization in its primary place of business." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6303" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/nonprofitStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "nonprofitStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6305" + } ] +}, { + "@id" : "https://schema.org/normalRange", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Range of acceptable values for a typical patient, when applicable." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6310" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/normalRange" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "normalRange" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6312" + } ] +}, { + "@id" : "https://schema.org/nsn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the NATO stock number (nsn) of a Product." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6317" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/nsn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "nsn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6319" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/numAdults", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of adults staying in the unit." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6323" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numAdults" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numAdults" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6325" + } ] +}, { + "@id" : "https://schema.org/numChildren", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of children staying in the unit." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6331" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numChildren" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numChildren" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6333" + } ] +}, { + "@id" : "https://schema.org/numConstraints", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the number of constraints property values defined for a particular ConstraintNode such as StatisticalVariable. This helps applications understand if they have access to a sufficiently complete description of a StatisticalVariable or other construct that is defined using properties on template-style nodes." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6339" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/numConstraints" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numConstraints" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6341" + } ] +}, { + "@id" : "https://schema.org/numTracks", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of tracks in this album or playlist." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6343" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numTracks" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numTracks" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6345" + } ] +}, { + "@id" : "https://schema.org/numberOfAccommodationUnits", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the total (available plus unavailable) number of accommodation units in an ApartmentComplex, or the number of accommodation units for a specific FloorPlan (within its specific ApartmentComplex). See also numberOfAvailableAccommodationUnits." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6347" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/numberOfAccommodationUnits" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfAccommodationUnits" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6350" + } ] +}, { + "@id" : "https://schema.org/numberOfAirbags", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number or type of airbags in the vehicle." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6355" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numberOfAirbags" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfAirbags" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6357" + } ] +}, { + "@id" : "https://schema.org/numberOfAvailableAccommodationUnits", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the number of available accommodation units in an ApartmentComplex, or the number of accommodation units for a specific FloorPlan (within its specific ApartmentComplex). See also numberOfAccommodationUnits." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6362" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/numberOfAvailableAccommodationUnits" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfAvailableAccommodationUnits" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6365" + } ] +}, { + "@id" : "https://schema.org/numberOfAxles", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of axles.

\n\nTypical unit code(s): C62." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6370" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numberOfAxles" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfAxles" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6372" + } ] +}, { + "@id" : "https://schema.org/numberOfBathroomsTotal", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The total integer number of bathrooms in some Accommodation, following real estate conventions as documented in RESO: \"The simple sum of the number of bathrooms. For example for a property with two Full Bathrooms and one Half Bathroom, the Bathrooms Total Integer will be 3.\". See also numberOfRooms." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6378" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/numberOfBathroomsTotal" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfBathroomsTotal" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6381" + } ] +}, { + "@id" : "https://schema.org/numberOfBedrooms", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The total integer number of bedrooms in a some Accommodation, ApartmentComplex or FloorPlan." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6383" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/numberOfBedrooms" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfBedrooms" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6387" + } ] +}, { + "@id" : "https://schema.org/numberOfBeds", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The quantity of the given bed type available in the HotelRoom, Suite, House, or Apartment." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6393" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numberOfBeds" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfBeds" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6395" + } ] +}, { + "@id" : "https://schema.org/numberOfCredits", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of credits or units awarded by a Course or required to complete an EducationalOccupationalProgram." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6397" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/numberOfCredits" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfCredits" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6400" + } ] +}, { + "@id" : "https://schema.org/numberOfDoors", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of doors.

\n\nTypical unit code(s): C62." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6406" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numberOfDoors" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfDoors" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6408" + } ] +}, { + "@id" : "https://schema.org/numberOfEmployees", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of employees in an organization, e.g. business." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6414" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numberOfEmployees" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfEmployees" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6417" + } ] +}, { + "@id" : "https://schema.org/numberOfEpisodes", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of episodes in this season or series." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6422" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numberOfEpisodes" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfEpisodes" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6427" + } ] +}, { + "@id" : "https://schema.org/numberOfForwardGears", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The total number of forward gears available for the transmission system of the vehicle.

\n\nTypical unit code(s): C62." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6429" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numberOfForwardGears" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfForwardGears" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6431" + } ] +}, { + "@id" : "https://schema.org/numberOfFullBathrooms", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Number of full bathrooms - The total number of full and ¾ bathrooms in an Accommodation. This corresponds to the BathroomsFull field in RESO." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6437" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/numberOfFullBathrooms" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfFullBathrooms" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6440" + } ] +}, { + "@id" : "https://schema.org/numberOfItems", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of items in an ItemList. Note that some descriptions might not fully describe all items in a list (e.g., multi-page pagination); in such cases, the numberOfItems would be for the entire list." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6442" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numberOfItems" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfItems" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6444" + } ] +}, { + "@id" : "https://schema.org/numberOfLoanPayments", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of payments contractually required at origination to repay the loan. For monthly paying loans this is the number of months from the contractual first payment date to the maturity date." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6446" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/numberOfLoanPayments" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfLoanPayments" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6448" + } ] +}, { + "@id" : "https://schema.org/numberOfPages", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of pages in the book." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6450" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numberOfPages" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfPages" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6452" + } ] +}, { + "@id" : "https://schema.org/numberOfPartialBathrooms", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Number of partial bathrooms - The total number of half and ¼ bathrooms in an Accommodation. This corresponds to the BathroomsPartial field in RESO." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6454" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/numberOfPartialBathrooms" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfPartialBathrooms" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6457" + } ] +}, { + "@id" : "https://schema.org/numberOfPlayers", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicate how many people can play this game (minimum, maximum, or range)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6459" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numberOfPlayers" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfPlayers" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6462" + } ] +}, { + "@id" : "https://schema.org/numberOfPreviousOwners", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of owners of the vehicle, including the current one.

\n\nTypical unit code(s): C62." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6467" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numberOfPreviousOwners" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfPreviousOwners" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6469" + } ] +}, { + "@id" : "https://schema.org/numberOfRooms", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of rooms (excluding bathrooms and closets) of the accommodation or lodging business.\nTypical unit code(s): ROM for room or C62 for no unit. The type of room can be put in the unitText property of the QuantitativeValue." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6475" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numberOfRooms" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfRooms" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6483" + } ] +}, { + "@id" : "https://schema.org/numberOfSeasons", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of seasons in this series." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6489" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numberOfSeasons" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberOfSeasons" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6493" + } ] +}, { + "@id" : "https://schema.org/numberedPosition", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A number associated with a role in an organization, for example, the number on an athlete's jersey." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6495" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/numberedPosition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "numberedPosition" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6497" + } ] +}, { + "@id" : "https://schema.org/nutrition", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Nutrition information about the recipe or menu item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6499" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/nutrition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "nutrition" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6502" + } ] +}, { + "@id" : "https://schema.org/object", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The object upon which the action is carried out, whose state is kept intact or changed. Also known as the semantic roles patient, affected or undergoer (which change their state) or theme (which doesn't). E.g. John read a book." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6507" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/object" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "object" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6509" + } ] +}, { + "@id" : "https://schema.org/observationAbout", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The observationAbout property identifies an entity, often a Place, associated with an Observation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6514" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/observationAbout" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "observationAbout" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6516" + } ] +}, { + "@id" : "https://schema.org/observationDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The observationDate of an Observation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6522" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/observationDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "observationDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6524" + } ] +}, { + "@id" : "https://schema.org/observationPeriod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The length of time an Observation took place over. The format follows P[0-9]*[Y|M|D|h|m|s]. For example, P1Y is Period 1 Year, P3M is Period 3 Months, P3h is Period 3 hours." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6526" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/observationPeriod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "observationPeriod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6528" + } ] +}, { + "@id" : "https://schema.org/occupancy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The allowed total occupancy for the accommodation in persons (including infants etc). For individual accommodations, this is not necessarily the legal maximum but defines the permitted usage as per the contractual agreement (e.g. a double room used by a single person).\nTypical unit code(s): C62 for person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6532" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/occupancy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "occupancy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6538" + } ] +}, { + "@id" : "https://schema.org/occupationLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The region/country for which this occupational description is appropriate. Note that educational requirements and qualifications can vary between jurisdictions." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6543" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/occupationLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "occupationLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6545" + } ] +}, { + "@id" : "https://schema.org/occupationalCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A category describing the job, preferably using a term from a taxonomy such as BLS O*NET-SOC, ISCO-08 or similar, with the property repeated for each applicable value. Ideally the taxonomy should be identified, and both the textual label and formal code for the category should be provided.

\n\nNote: for historical reasons, any textual label and formal code provided as a literal may be assumed to be from O*NET-SOC." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6550" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/occupationalCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "occupationalCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6556" + } ] +}, { + "@id" : "https://schema.org/occupationalCredentialAwarded", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A description of the qualification, award, certificate, diploma or other occupational credential awarded as a consequence of successful completion of this course or program." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6561" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/occupationalCredentialAwarded" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "occupationalCredentialAwarded" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6564" + } ] +}, { + "@id" : "https://schema.org/offerCount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of offers for the product." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6569" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/offerCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "offerCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6571" + } ] +}, { + "@id" : "https://schema.org/offeredBy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A pointer to the organization or person making the offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6573" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/offeredBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "offeredBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6575" + } ] +}, { + "@id" : "https://schema.org/offers", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use businessFunction to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a Demand. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6581" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/offers" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "offers" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6590" + } ] +}, { + "@id" : "https://schema.org/offersPrescriptionByMail", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Whether prescriptions can be delivered by mail." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6596" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/offersPrescriptionByMail" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "offersPrescriptionByMail" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6598" + } ] +}, { + "@id" : "https://schema.org/openingHours", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The general opening hours for a business. Opening hours can be specified as a weekly time range, starting with days, then times per day. Multiple days can be listed with commas ',' separating each day. Day or time ranges are specified using a hyphen '-'.

\n\n
    \n
  • Days are specified using the following two-letter combinations: Mo, Tu, We, Th, Fr, Sa, Su.
  • \n
  • Times are specified using 24:00 format. For example, 3pm is specified as 15:00, 10am as 10:00.
  • \n
  • Here is an example: <time itemprop=\"openingHours\" datetime="Tu,Th 16:00-20:00">Tuesdays and Thursdays 4-8pm</time>.
  • \n
  • If a business is open 7 days a week, then it can be specified as <time itemprop="openingHours" datetime="Mo-Su">Monday through Sunday, all day</time>.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6600" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/openingHours" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "openingHours" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6603" + } ] +}, { + "@id" : "https://schema.org/openingHoursSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The opening hours of a certain place." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6607" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/openingHoursSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "openingHoursSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6609" + } ] +}, { + "@id" : "https://schema.org/opens", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The opening hour of the place or service on the given day(s) of the week." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6614" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/opens" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "opens" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6616" + } ] +}, { + "@id" : "https://schema.org/operatingSystem", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Operating systems supported (Windows 7, OS X 10.6, Android 1.6)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6618" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/operatingSystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "operatingSystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6620" + } ] +}, { + "@id" : "https://schema.org/opponent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of participant. The opponent on this action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6624" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/opponent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "opponent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6626" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/participant" + } ] +}, { + "@id" : "https://schema.org/option", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of object. The options subject to this action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6631" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/option" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "option" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6633" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/object" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/actionOption" + } ] +}, { + "@id" : "https://schema.org/orderDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Date order was placed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6638" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/orderDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "orderDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6640" + } ] +}, { + "@id" : "https://schema.org/orderDelivery", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The delivery of the parcel related to this order or order item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6643" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/orderDelivery" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "orderDelivery" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6646" + } ] +}, { + "@id" : "https://schema.org/orderItemNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The identifier of the order item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6651" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/orderItemNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "orderItemNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6653" + } ] +}, { + "@id" : "https://schema.org/orderItemStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The current status of the order item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6657" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/orderItemStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "orderItemStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6659" + } ] +}, { + "@id" : "https://schema.org/orderNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The identifier of the transaction." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6664" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/orderNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "orderNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6666" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/orderQuantity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of the item ordered. If the property is not set, assume the quantity is one." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6670" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/orderQuantity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "orderQuantity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6672" + } ] +}, { + "@id" : "https://schema.org/orderStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The current status of the order." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6674" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/orderStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "orderStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6676" + } ] +}, { + "@id" : "https://schema.org/orderedItem", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The item ordered." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6681" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/orderedItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "orderedItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6684" + } ] +}, { + "@id" : "https://schema.org/organizer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An organizer of an Event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6691" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/organizer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "organizer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6693" + } ] +}, { + "@id" : "https://schema.org/originAddress", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Shipper's address." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6699" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/originAddress" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "originAddress" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6701" + } ] +}, { + "@id" : "https://schema.org/originalMediaContextDescription", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Describes, in a MediaReview when dealing with DecontextualizedContent, background information that can contribute to better interpretation of the MediaObject." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6706" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/originalMediaContextDescription" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "originalMediaContextDescription" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6708" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/description" + } ] +}, { + "@id" : "https://schema.org/originalMediaLink", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Link to the page containing an original version of the content, or directly to an online copy of the original MediaObject content, e.g. video file." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6712" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/originalMediaLink" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "originalMediaLink" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6714" + } ] +}, { + "@id" : "https://schema.org/originatesFrom", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The vasculature the lymphatic structure originates, or afferents, from." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6720" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/originatesFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "originatesFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6722" + } ] +}, { + "@id" : "https://schema.org/overdosage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any information related to overdose on a drug, including signs or symptoms, treatments, contact information for emergency response." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6727" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/overdosage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "overdosage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6729" + } ] +}, { + "@id" : "https://schema.org/ownedFrom", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date and time of obtaining the product." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6733" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ownedFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ownedFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6735" + } ] +}, { + "@id" : "https://schema.org/ownedThrough", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date and time of giving up ownership on the product." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6737" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ownedThrough" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ownedThrough" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6739" + } ] +}, { + "@id" : "https://schema.org/ownershipFundingInfo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For an Organization (often but not necessarily a NewsMediaOrganization), a description of organizational ownership structure; funding and grants. In a news/media setting, this is with particular reference to editorial independence. Note that the funder is also available and can be used to make basic funder information machine-readable." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6741" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ownershipFundingInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ownershipFundingInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6744" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/publishingPrinciples" + } ] +}, { + "@id" : "https://schema.org/owns", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Products owned by the organization or person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6750" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/owns" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "owns" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6753" + } ] +}, { + "@id" : "https://schema.org/pageEnd", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The page on which the work ends; for example \"138\" or \"xvi\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6759" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/pageEnd" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "pageEnd" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6764" + } ] +}, { + "@id" : "https://schema.org/pageStart", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The page on which the work starts; for example \"135\" or \"xiii\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6769" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/pageStart" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "pageStart" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6774" + } ] +}, { + "@id" : "https://schema.org/pagination", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any description of pages that is not separated into pageStart and pageEnd; for example, \"1-6, 9, 55\" or \"10-12, 46-49\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6779" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/pagination" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "pagination" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6784" + } ] +}, { + "@id" : "https://schema.org/parent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A parent of this person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6788" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/parent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "parent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6790" + } ] +}, { + "@id" : "https://schema.org/parentItem", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The parent of a question, answer or item in general. Typically used for Q/A discussion threads e.g. a chain of comments with the first comment being an Article or other CreativeWork. See also comment which points from something to a comment about it." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6795" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/parentItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "parentItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6799" + } ] +}, { + "@id" : "https://schema.org/parentOrganization", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The larger organization that this organization is a subOrganization of, if any." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6805" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/parentOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "parentOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6807" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/subOrganization" + } ] +}, { + "@id" : "https://schema.org/parentService", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A broadcast service to which the broadcast service may belong to such as regional variations of a national channel." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6812" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/parentService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "parentService" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6814" + } ] +}, { + "@id" : "https://schema.org/parentTaxon", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Closest parent taxon of the taxon in question." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6819" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/parentTaxon" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "parentTaxon" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6821" + } ] +}, { + "@id" : "https://schema.org/parents", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A parents of the person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6826" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/parents" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "parents" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6828" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/parent" + } ] +}, { + "@id" : "https://schema.org/partOfEpisode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The episode to which this clip belongs." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6833" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/partOfEpisode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "partOfEpisode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6835" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/isPartOf" + } ] +}, { + "@id" : "https://schema.org/partOfInvoice", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The order is being paid as part of the referenced Invoice." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6840" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/partOfInvoice" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "partOfInvoice" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6842" + } ] +}, { + "@id" : "https://schema.org/partOfOrder", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The overall order the items in this delivery were included in." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6847" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/partOfOrder" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "partOfOrder" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6849" + } ] +}, { + "@id" : "https://schema.org/partOfSeason", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The season to which this episode belongs." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6854" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/partOfSeason" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "partOfSeason" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6857" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/isPartOf" + } ] +}, { + "@id" : "https://schema.org/partOfSeries", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The series to which this episode or season belongs." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6862" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/partOfSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "partOfSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6866" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/isPartOf" + } ] +}, { + "@id" : "https://schema.org/partOfSystem", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The anatomical or organ system that this structure is part of." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6871" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/partOfSystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "partOfSystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6873" + } ] +}, { + "@id" : "https://schema.org/partOfTVSeries", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The TV series to which this episode or season belongs." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6878" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/partOfTVSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "partOfTVSeries" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6882" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/isPartOf" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/partOfSeries" + } ] +}, { + "@id" : "https://schema.org/partOfTrip", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Identifies that this Trip is a subTrip of another Trip. For example Day 1, Day 2, etc. of a multi-day trip." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6887" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/partOfTrip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "partOfTrip" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6889" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/subTrip" + } ] +}, { + "@id" : "https://schema.org/participant", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Other co-agents that participated in the action indirectly. E.g. John wrote a book with Steve." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6894" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/participant" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "participant" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6896" + } ] +}, { + "@id" : "https://schema.org/partySize", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Number of people the reservation should accommodate." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6902" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/partySize" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "partySize" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6905" + } ] +}, { + "@id" : "https://schema.org/passengerPriorityStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The priority status assigned to a passenger for security or boarding (e.g. FastTrack or Priority)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6911" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/passengerPriorityStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "passengerPriorityStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6913" + } ] +}, { + "@id" : "https://schema.org/passengerSequenceNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The passenger's sequence number as assigned by the airline." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6918" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/passengerSequenceNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "passengerSequenceNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6920" + } ] +}, { + "@id" : "https://schema.org/pathophysiology", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Changes in the normal mechanical, physical, and biochemical functions that are associated with this activity or condition." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6924" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/pathophysiology" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "pathophysiology" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6927" + } ] +}, { + "@id" : "https://schema.org/pattern", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A pattern that something has, for example 'polka dot', 'striped', 'Canadian flag'. Values are typically expressed as text, although links to controlled value schemes are also supported." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6931" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/pattern" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "pattern" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6934" + } ] +}, { + "@id" : "https://schema.org/payload", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The permitted weight of passengers and cargo, EXCLUDING the weight of the empty vehicle.

\n\nTypical unit code(s): KGM for kilogram, LBR for pound

\n\n\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6939" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/payload" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "payload" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6941" + } ] +}, { + "@id" : "https://schema.org/paymentAccepted", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Cash, Credit Card, Cryptocurrency, Local Exchange Tradings System, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6946" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/paymentAccepted" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "paymentAccepted" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6948" + } ] +}, { + "@id" : "https://schema.org/paymentDue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date that payment is due." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6952" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/paymentDue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "paymentDue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6955" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/paymentDueDate" + } ] +}, { + "@id" : "https://schema.org/paymentDueDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date that payment is due." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6957" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/paymentDueDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "paymentDueDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6960" + } ] +}, { + "@id" : "https://schema.org/paymentMethod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The name of the credit card or other method of payment for the order." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6963" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/paymentMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "paymentMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6966" + } ] +}, { + "@id" : "https://schema.org/paymentMethodId", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An identifier for the method of payment used (e.g. the last 4 digits of the credit card)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6971" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/paymentMethodId" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "paymentMethodId" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6974" + } ] +}, { + "@id" : "https://schema.org/paymentStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The status of payment; whether the invoice has been paid or not." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6978" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/paymentStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "paymentStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6980" + } ] +}, { + "@id" : "https://schema.org/paymentUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The URL for sending a payment." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6985" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/paymentUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "paymentUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6987" + } ] +}, { + "@id" : "https://schema.org/penciler", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The individual who draws the primary narrative artwork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid6991" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/penciler" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "penciler" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid6995" + } ] +}, { + "@id" : "https://schema.org/percentile10", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The 10th percentile value." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7000" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/percentile10" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "percentile10" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7002" + } ] +}, { + "@id" : "https://schema.org/percentile25", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The 25th percentile value." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7004" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/percentile25" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "percentile25" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7006" + } ] +}, { + "@id" : "https://schema.org/percentile75", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The 75th percentile value." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7008" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/percentile75" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "percentile75" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7010" + } ] +}, { + "@id" : "https://schema.org/percentile90", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The 90th percentile value." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7012" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/percentile90" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "percentile90" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7014" + } ] +}, { + "@id" : "https://schema.org/performTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The length of time it takes to perform instructions or a direction (not including time to prepare the supplies), in ISO 8601 duration format." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7016" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/performTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "performTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7019" + } ] +}, { + "@id" : "https://schema.org/performer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A performer at the event—for example, a presenter, musician, musical group or actor." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7024" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/performer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "performer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7026" + } ] +}, { + "@id" : "https://schema.org/performerIn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Event that this person is a performer or participant in." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7032" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/performerIn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "performerIn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7034" + } ] +}, { + "@id" : "https://schema.org/performers", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The main performer or performers of the event—for example, a presenter, musician, or actor." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7039" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/performers" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "performers" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7041" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/performer" + } ] +}, { + "@id" : "https://schema.org/permissionType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of permission granted the person, organization, or audience." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7047" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/permissionType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "permissionType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7049" + } ] +}, { + "@id" : "https://schema.org/permissions", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Permission(s) required to run the app (for example, a mobile app may require full internet access or may run only on wifi)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7054" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/permissions" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "permissions" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7056" + } ] +}, { + "@id" : "https://schema.org/permitAudience", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The target audience for this permit." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7060" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/permitAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "permitAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7062" + } ] +}, { + "@id" : "https://schema.org/permittedUsage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indications regarding the permitted usage of the accommodation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7067" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/permittedUsage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "permittedUsage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7069" + } ] +}, { + "@id" : "https://schema.org/petsAllowed", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether pets are allowed to enter the accommodation or lodging business. More detailed information can be put in a text value." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7073" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/petsAllowed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "petsAllowed" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7078" + } ] +}, { + "@id" : "https://schema.org/phoneticText", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Representation of a text textValue using the specified speechToTextMarkup. For example the city name of Houston in IPA: /ˈhjuːstən/." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7083" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/phoneticText" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "phoneticText" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7085" + } ] +}, { + "@id" : "https://schema.org/photo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A photograph of this place." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7089" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/photo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "photo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7091" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/image" + } ] +}, { + "@id" : "https://schema.org/photos", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Photographs of this place." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7097" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/photos" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "photos" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7099" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/photo" + } ] +}, { + "@id" : "https://schema.org/physicalRequirement", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A description of the types of physical activity associated with the job. Defined terms such as those in O*net may be used, but note that there is no way to specify the level of ability as well as its nature when using a defined term." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7105" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/physicalRequirement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "physicalRequirement" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7107" + } ] +}, { + "@id" : "https://schema.org/physiologicalBenefits", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specific physiologic benefits associated to the plan." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7112" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/physiologicalBenefits" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "physiologicalBenefits" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7114" + } ] +}, { + "@id" : "https://schema.org/pickupLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Where a taxi will pick up a passenger or a rental car can be picked up." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7118" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/pickupLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "pickupLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7121" + } ] +}, { + "@id" : "https://schema.org/pickupTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "When a taxi will pick up a passenger or a rental car can be picked up." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7126" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/pickupTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "pickupTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7129" + } ] +}, { + "@id" : "https://schema.org/playMode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether this game is multi-player, co-op or single-player. The game can be marked as multi-player, co-op and single-player at the same time." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7131" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/playMode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "playMode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7134" + } ] +}, { + "@id" : "https://schema.org/playerType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Player type required—for example, Flash or Silverlight." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7139" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/playerType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "playerType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7141" + } ] +}, { + "@id" : "https://schema.org/playersOnline", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Number of players on the server." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7145" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/playersOnline" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "playersOnline" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7147" + } ] +}, { + "@id" : "https://schema.org/polygon", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A polygon is the area enclosed by a point-to-point path for which the starting and ending points are the same. A polygon is expressed as a series of four or more space delimited points where the first and final points are identical." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7149" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/polygon" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "polygon" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7151" + } ] +}, { + "@id" : "https://schema.org/populationType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the populationType common to all members of a StatisticalPopulation or all cases within the scope of a StatisticalVariable." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7155" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/populationType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "populationType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7158" + } ] +}, { + "@id" : "https://schema.org/position", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The position of an item in a series or sequence of items." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7163" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/position" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "position" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7166" + } ] +}, { + "@id" : "https://schema.org/positiveNotes", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Provides positive considerations regarding something, for example product highlights or (alongside negativeNotes) pro/con lists for reviews.

\n\nIn the case of a Review, the property describes the itemReviewed from the perspective of the review; in the case of a Product, the product itself is being described.

\n\nThe property values can be expressed either as unstructured text (repeated as necessary), or if ordered, as a list (in which case the most positive is at the beginning of the list)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7171" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/positiveNotes" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "positiveNotes" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7174" + } ] +}, { + "@id" : "https://schema.org/possibleComplication", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A possible unexpected and unfavorable evolution of a medical condition. Complications may include worsening of the signs or symptoms of the disease, extension of the condition to other organ systems, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7181" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/possibleComplication" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "possibleComplication" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7183" + } ] +}, { + "@id" : "https://schema.org/possibleTreatment", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A possible treatment to address this condition, sign or symptom." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7187" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/possibleTreatment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "possibleTreatment" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7190" + } ] +}, { + "@id" : "https://schema.org/postOfficeBoxNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The post office box number for PO box addresses." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7195" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/postOfficeBoxNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "postOfficeBoxNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7197" + } ] +}, { + "@id" : "https://schema.org/postOp", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A description of the postoperative procedures, care, and/or followups for this device." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7201" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/postOp" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "postOp" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7203" + } ] +}, { + "@id" : "https://schema.org/postalCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The postal code. For example, 94043." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7207" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/postalCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "postalCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7212" + } ] +}, { + "@id" : "https://schema.org/postalCodeBegin", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "First postal code in a range (included)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7216" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/postalCodeBegin" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "postalCodeBegin" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7218" + } ] +}, { + "@id" : "https://schema.org/postalCodeEnd", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Last postal code in the range (included). Needs to be after postalCodeBegin." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7222" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/postalCodeEnd" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "postalCodeEnd" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7224" + } ] +}, { + "@id" : "https://schema.org/postalCodePrefix", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A defined range of postal codes indicated by a common textual prefix. Used for non-numeric systems such as UK." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7228" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/postalCodePrefix" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "postalCodePrefix" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7230" + } ] +}, { + "@id" : "https://schema.org/postalCodeRange", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A defined range of postal codes." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7234" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/postalCodeRange" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "postalCodeRange" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7236" + } ] +}, { + "@id" : "https://schema.org/potentialAction", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a potential Action, which describes an idealized action in which this thing would play an 'object' role." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7241" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/potentialAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "potentialAction" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7243" + } ] +}, { + "@id" : "https://schema.org/potentialUse", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Intended use of the BioChemEntity by humans." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7248" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/potentialUse" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "potentialUse" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7251" + } ] +}, { + "@id" : "https://schema.org/practicesAt", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A MedicalOrganization where the IndividualPhysician practices." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7256" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/practicesAt" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "practicesAt" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7258" + } ] +}, { + "@id" : "https://schema.org/preOp", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A description of the workup, testing, and other preparations required before implanting this device." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7263" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/preOp" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "preOp" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7265" + } ] +}, { + "@id" : "https://schema.org/predecessorOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A pointer from a previous, often discontinued variant of the product to its newer variant." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7269" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/predecessorOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "predecessorOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7271" + } ] +}, { + "@id" : "https://schema.org/pregnancyCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Pregnancy category of this drug." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7276" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/pregnancyCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "pregnancyCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7278" + } ] +}, { + "@id" : "https://schema.org/pregnancyWarning", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any precaution, guidance, contraindication, etc. related to this drug's use during pregnancy." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7283" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/pregnancyWarning" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "pregnancyWarning" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7285" + } ] +}, { + "@id" : "https://schema.org/prepTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The length of time it takes to prepare the items to be used in instructions or a direction, in ISO 8601 duration format." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7289" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/prepTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "prepTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7292" + } ] +}, { + "@id" : "https://schema.org/preparation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Typical preparation that a patient must undergo before having the procedure performed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7297" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/preparation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "preparation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7299" + } ] +}, { + "@id" : "https://schema.org/prescribingInfo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Link to prescribing information for the drug." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7304" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/prescribingInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "prescribingInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7306" + } ] +}, { + "@id" : "https://schema.org/prescriptionStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the status of drug prescription, e.g. local catalogs classifications or whether the drug is available by prescription or over-the-counter, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7310" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/prescriptionStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "prescriptionStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7312" + } ] +}, { + "@id" : "https://schema.org/previousItem", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A link to the ListItem that precedes the current one." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7317" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/previousItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "previousItem" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7319" + } ] +}, { + "@id" : "https://schema.org/previousStartDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Used in conjunction with eventStatus for rescheduled or cancelled events. This property contains the previously scheduled start date. For rescheduled events, the startDate property should be used for the newly scheduled start date. In the (rare) case of an event that has been postponed and rescheduled multiple times, this field may be repeated." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7324" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/previousStartDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "previousStartDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7326" + } ] +}, { + "@id" : "https://schema.org/price", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The offer price of a product, or of a price component when attached to PriceSpecification and its subtypes.

\n\nUsage guidelines:

\n\n
    \n
  • Use the priceCurrency property (with standard formats: ISO 4217 currency format, e.g. \"USD\"; Ticker symbol for cryptocurrencies, e.g. \"BTC\"; well known names for Local Exchange Trading Systems (LETS) and other currency types, e.g. \"Ithaca HOUR\") instead of including ambiguous symbols such as '$' in the value.
  • \n
  • Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
  • \n
  • Note that both RDFa and Microdata syntax allow the use of a \"content=\" attribute for publishing simple machine-readable values alongside more human-friendly formatting.
  • \n
  • Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7328" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/price" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "price" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7332" + } ] +}, { + "@id" : "https://schema.org/priceComponent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This property links to all UnitPriceSpecification nodes that apply in parallel for the CompoundPriceSpecification node." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7337" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/priceComponent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "priceComponent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7339" + } ] +}, { + "@id" : "https://schema.org/priceComponentType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Identifies a price component (for example, a line item on an invoice), part of the total price for an offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7344" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/priceComponentType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "priceComponentType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7346" + } ] +}, { + "@id" : "https://schema.org/priceCurrency", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The currency of the price, or a price component when attached to PriceSpecification and its subtypes.

\n\nUse standard formats: ISO 4217 currency format, e.g. \"USD\"; Ticker symbol for cryptocurrencies, e.g. \"BTC\"; well known names for Local Exchange Trading Systems (LETS) and other currency types, e.g. \"Ithaca HOUR\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7351" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/priceCurrency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "priceCurrency" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7357" + } ] +}, { + "@id" : "https://schema.org/priceRange", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The price range of the business, for example $$$." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7361" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/priceRange" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "priceRange" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7363" + } ] +}, { + "@id" : "https://schema.org/priceSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "One or more detailed price specifications, indicating the unit price and delivery or payment charges." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7367" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/priceSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "priceSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7371" + } ] +}, { + "@id" : "https://schema.org/priceType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Defines the type of a price specified for an offered product, for example a list price, a (temporary) sale price or a manufacturer suggested retail price. If multiple prices are specified for an offer the priceType property can be used to identify the type of each such specified price. The value of priceType can be specified as a value from enumeration PriceTypeEnumeration or as a free form text string for price types that are not already predefined in PriceTypeEnumeration." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7376" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/priceType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "priceType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7379" + } ] +}, { + "@id" : "https://schema.org/priceValidUntil", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date after which the price is no longer available." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7384" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/priceValidUntil" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "priceValidUntil" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7386" + } ] +}, { + "@id" : "https://schema.org/primaryImageOfPage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the main image on the page." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7388" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/primaryImageOfPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "primaryImageOfPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7390" + } ] +}, { + "@id" : "https://schema.org/primaryPrevention", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A preventative therapy used to prevent an initial occurrence of the medical condition, such as vaccination." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7395" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/primaryPrevention" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "primaryPrevention" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7397" + } ] +}, { + "@id" : "https://schema.org/printColumn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of the column in which the NewsArticle appears in the print edition." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7402" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/printColumn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "printColumn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7404" + } ] +}, { + "@id" : "https://schema.org/printEdition", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The edition of the print product in which the NewsArticle appears." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7408" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/printEdition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "printEdition" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7410" + } ] +}, { + "@id" : "https://schema.org/printPage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "If this NewsArticle appears in print, this field indicates the name of the page on which the article is found. Please note that this field is intended for the exact page name (e.g. A5, B18)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7414" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/printPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "printPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7416" + } ] +}, { + "@id" : "https://schema.org/printSection", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "If this NewsArticle appears in print, this field indicates the print section in which the article appeared." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7420" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/printSection" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "printSection" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7422" + } ] +}, { + "@id" : "https://schema.org/procedure", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A description of the procedure involved in setting up, using, and/or installing the device." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7426" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/procedure" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "procedure" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7428" + } ] +}, { + "@id" : "https://schema.org/procedureType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of procedure, for example Surgical, Noninvasive, or Percutaneous." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7432" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/procedureType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "procedureType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7434" + } ] +}, { + "@id" : "https://schema.org/processingTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Estimated processing time for the service using this channel." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7439" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/processingTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "processingTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7441" + } ] +}, { + "@id" : "https://schema.org/processorRequirements", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Processor architecture required to run the application (e.g. IA64)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7446" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/processorRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "processorRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7448" + } ] +}, { + "@id" : "https://schema.org/producer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The person or organization who produced the work (e.g. music album, movie, TV/radio series etc.)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7452" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/producer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "producer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7454" + } ] +}, { + "@id" : "https://schema.org/produces", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The tangible thing generated by the service, e.g. a passport, permit, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7460" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/produces" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "produces" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7462" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/serviceOutput" + } ] +}, { + "@id" : "https://schema.org/productGroupID", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a textual identifier for a ProductGroup." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7467" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/productGroupID" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "productGroupID" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7469" + } ] +}, { + "@id" : "https://schema.org/productID", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The product identifier, such as ISBN. For example: meta itemprop=\"productID\" content=\"isbn:123-456-789\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7473" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/productID" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "productID" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7475" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/productReturnDays", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The productReturnDays property indicates the number of days (from purchase) within which relevant product return policy is applicable." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7479" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://attic.schema.org/productReturnDays" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "productReturnDays" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7481" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/merchantReturnDays" + } ] +}, { + "@id" : "https://schema.org/productReturnLink", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a Web page or service by URL, for product return." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7483" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://attic.schema.org/productReturnLink" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "productReturnLink" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7485" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/merchantReturnLink" + } ] +}, { + "@id" : "https://schema.org/productSupported", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The product or service this support contact point is related to (such as product support for a particular product line). This can be a specific product or product line (e.g. \"iPhone\") or a general category of products or services (e.g. \"smartphones\")." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7489" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/productSupported" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "productSupported" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7491" + } ] +}, { + "@id" : "https://schema.org/productionCompany", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The production company or studio responsible for the item, e.g. series, video game, episode etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7496" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/productionCompany" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "productionCompany" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7505" + } ] +}, { + "@id" : "https://schema.org/productionDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date of production of the item, e.g. vehicle." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7510" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/productionDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "productionDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7513" + } ] +}, { + "@id" : "https://schema.org/proficiencyLevel", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Proficiency needed for this content; expected values: 'Beginner', 'Expert'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7515" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/proficiencyLevel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "proficiencyLevel" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7517" + } ] +}, { + "@id" : "https://schema.org/programMembershipUsed", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any membership in a frequent flyer, hotel loyalty program, etc. being applied to the reservation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7521" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/programMembershipUsed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "programMembershipUsed" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7523" + } ] +}, { + "@id" : "https://schema.org/programName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The program providing the membership." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7528" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/programName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "programName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7530" + } ] +}, { + "@id" : "https://schema.org/programPrerequisites", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Prerequisites for enrolling in the program." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7534" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/programPrerequisites" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "programPrerequisites" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7536" + } ] +}, { + "@id" : "https://schema.org/programType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of educational or occupational program. For example, classroom, internship, alternance, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7543" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/programType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "programType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7545" + } ] +}, { + "@id" : "https://schema.org/programmingLanguage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The computer programming language." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7550" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/programmingLanguage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "programmingLanguage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7552" + } ] +}, { + "@id" : "https://schema.org/programmingModel", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether API is managed or unmanaged." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7557" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/programmingModel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "programmingModel" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7559" + } ] +}, { + "@id" : "https://schema.org/propertyID", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A commonly used identifier for the characteristic represented by the property, e.g. a manufacturer or a standard code for a property. propertyID can be\n(1) a prefixed string, mainly meant to be used with standards for product properties; (2) a site-specific, non-prefixed string (e.g. the primary key of the property or the vendor-specific ID of the property), or (3)\na URL indicating the type of the property, either pointing to an external vocabulary, or a Web resource that describes the property (e.g. a glossary entry).\nStandards bodies should promote a standard prefix for the identifiers of properties from their standards." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7563" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/propertyID" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "propertyID" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7565" + } ] +}, { + "@id" : "https://schema.org/proprietaryName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Proprietary name given to the diet plan, typically by its originator or creator." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7569" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/proprietaryName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "proprietaryName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7572" + } ] +}, { + "@id" : "https://schema.org/proteinContent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of grams of protein." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7576" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/proteinContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "proteinContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7578" + } ] +}, { + "@id" : "https://schema.org/provider", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The service provider, service operator, or service performer; the goods producer. Another party (a seller) may offer those services or goods on behalf of the provider. A provider may also serve as the seller." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7583" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/provider" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "provider" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7592" + } ] +}, { + "@id" : "https://schema.org/providerMobility", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the mobility of a provided service (e.g. 'static', 'dynamic')." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7598" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/providerMobility" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "providerMobility" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7600" + } ] +}, { + "@id" : "https://schema.org/providesBroadcastService", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The BroadcastService offered on this channel." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7604" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/providesBroadcastService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "providesBroadcastService" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7606" + } ] +}, { + "@id" : "https://schema.org/providesService", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The service provided by this channel." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7611" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/providesService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "providesService" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7613" + } ] +}, { + "@id" : "https://schema.org/publicAccess", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A flag to signal that the Place is open to public visitors. If this property is omitted there is no assumed default boolean value." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7618" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/publicAccess" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "publicAccess" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7620" + } ] +}, { + "@id" : "https://schema.org/publicTransportClosuresInfo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Information about public transport closures." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7622" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/publicTransportClosuresInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "publicTransportClosuresInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7624" + } ] +}, { + "@id" : "https://schema.org/publication", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A publication event associated with the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7629" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/publication" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "publication" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7631" + } ] +}, { + "@id" : "https://schema.org/publicationType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of the medical article, taken from the US NLM MeSH publication type catalog. See also MeSH documentation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7636" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/publicationType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "publicationType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7638" + } ] +}, { + "@id" : "https://schema.org/publishedBy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An agent associated with the publication event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7642" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/publishedBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "publishedBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7644" + } ] +}, { + "@id" : "https://schema.org/publishedOn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A broadcast service associated with the publication event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7650" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/publishedOn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "publishedOn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7652" + } ] +}, { + "@id" : "https://schema.org/publisher", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The publisher of the creative work." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7657" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/publisher" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "publisher" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7659" + } ] +}, { + "@id" : "https://schema.org/publisherImprint", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The publishing division which published the comic." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7665" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/publisherImprint" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "publisherImprint" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7667" + } ] +}, { + "@id" : "https://schema.org/publishingPrinciples", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The publishingPrinciples property indicates (typically via URL) a document describing the editorial principles of an Organization (or individual, e.g. a Person writing a blog) that relate to their activities as a publisher, e.g. ethics or diversity policies. When applied to a CreativeWork (e.g. NewsArticle) the principles are those of the party primarily responsible for the creation of the CreativeWork.

\n\nWhile such policies are most typically expressed in natural language, sometimes related information (e.g. indicating a funder) can be expressed using schema.org terminology." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7672" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/publishingPrinciples" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "publishingPrinciples" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7676" + } ] +}, { + "@id" : "https://schema.org/purchaseDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date the item, e.g. vehicle, was purchased by the current owner." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7681" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/purchaseDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "purchaseDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7684" + } ] +}, { + "@id" : "https://schema.org/qualifications", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specific qualifications required for this role or Occupation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7686" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/qualifications" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "qualifications" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7689" + } ] +}, { + "@id" : "https://schema.org/quarantineGuidelines", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Guidelines about quarantine rules, e.g. in the context of a pandemic." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7694" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/quarantineGuidelines" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "quarantineGuidelines" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7696" + } ] +}, { + "@id" : "https://schema.org/query", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of instrument. The query used on this action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7701" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/query" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "query" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7703" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/instrument" + } ] +}, { + "@id" : "https://schema.org/quest", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The task that a player-controlled character, or group of characters may complete in order to gain a reward." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7707" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/quest" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "quest" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7710" + } ] +}, { + "@id" : "https://schema.org/question", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of object. A question." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7715" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/question" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "question" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7717" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/object" + } ] +}, { + "@id" : "https://schema.org/rangeIncludes", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Relates a property to a class that constitutes (one of) the expected type(s) for values of the property." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7722" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://meta.schema.org/rangeIncludes" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "rangeIncludes" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7724" + } ] +}, { + "@id" : "https://schema.org/ratingCount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The count of total number of ratings." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7729" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ratingCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ratingCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7731" + } ] +}, { + "@id" : "https://schema.org/ratingExplanation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A short explanation (e.g. one to two sentences) providing background context and other information that led to the conclusion expressed in the rating. This is particularly applicable to ratings associated with \"fact check\" markup using ClaimReview." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7733" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/ratingExplanation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ratingExplanation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7735" + } ] +}, { + "@id" : "https://schema.org/ratingValue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The rating for the content.

\n\nUsage guidelines:

\n\n
    \n
  • Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
  • \n
  • Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7739" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ratingValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ratingValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7741" + } ] +}, { + "@id" : "https://schema.org/readBy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A person who reads (performs) the audiobook." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7746" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/readBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "readBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7748" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/actor" + } ] +}, { + "@id" : "https://schema.org/readonlyValue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Whether or not a property is mutable. Default is false. Specifying this for a property that also has a value makes it act similar to a \"hidden\" input in an HTML form." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7753" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/readonlyValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "readonlyValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7755" + } ] +}, { + "@id" : "https://schema.org/realEstateAgent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of participant. The real estate agent involved in the action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7757" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/realEstateAgent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "realEstateAgent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7759" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/participant" + } ] +}, { + "@id" : "https://schema.org/recipe", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of instrument. The recipe/instructions used to perform the action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7764" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/recipe" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recipe" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7766" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/instrument" + } ] +}, { + "@id" : "https://schema.org/recipeCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The category of the recipe—for example, appetizer, entree, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7771" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/recipeCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recipeCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7773" + } ] +}, { + "@id" : "https://schema.org/recipeCuisine", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The cuisine of the recipe (for example, French or Ethiopian)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7777" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/recipeCuisine" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recipeCuisine" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7779" + } ] +}, { + "@id" : "https://schema.org/recipeIngredient", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A single ingredient used in the recipe, e.g. sugar, flour or garlic." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7783" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/recipeIngredient" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recipeIngredient" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7785" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/supply" + } ] +}, { + "@id" : "https://schema.org/recipeInstructions", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A step in making the recipe, in the form of a single item (document, video, etc.) or an ordered list with HowToStep and/or HowToSection items." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7789" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/recipeInstructions" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recipeInstructions" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7791" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/step" + } ] +}, { + "@id" : "https://schema.org/recipeYield", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The quantity produced by the recipe (for example, number of people served, number of servings, etc)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7797" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/recipeYield" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recipeYield" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7799" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/yield" + } ] +}, { + "@id" : "https://schema.org/recipient", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of participant. The participant who is at the receiving end of the action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7804" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/recipient" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recipient" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7814" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/participant" + } ] +}, { + "@id" : "https://schema.org/recognizedBy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An organization that acknowledges the validity, value or utility of a credential. Note: recognition may include a process of quality assurance or accreditation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7822" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/recognizedBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recognizedBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7824" + } ] +}, { + "@id" : "https://schema.org/recognizingAuthority", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "If applicable, the organization that officially recognizes this entity as part of its endorsed system of medicine." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7829" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/recognizingAuthority" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recognizingAuthority" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7831" + } ] +}, { + "@id" : "https://schema.org/recommendationStrength", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Strength of the guideline's recommendation (e.g. 'class I')." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7836" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/recommendationStrength" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recommendationStrength" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7838" + } ] +}, { + "@id" : "https://schema.org/recommendedIntake", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Recommended intake of this supplement for a given population as defined by a specific recommending authority." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7842" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/recommendedIntake" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recommendedIntake" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7844" + } ] +}, { + "@id" : "https://schema.org/recordLabel", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The label that issued the release." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7849" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/recordLabel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recordLabel" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7851" + } ] +}, { + "@id" : "https://schema.org/recordedAs", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An audio recording of the work." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7856" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/recordedAs" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recordedAs" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7858" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/recordingOf" + } ] +}, { + "@id" : "https://schema.org/recordedAt", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Event where the CreativeWork was recorded. The CreativeWork may capture all or part of the event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7863" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/recordedAt" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recordedAt" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7865" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/recordedIn" + } ] +}, { + "@id" : "https://schema.org/recordedIn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The CreativeWork that captured all or part of this Event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7870" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/recordedIn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recordedIn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7872" + } ] +}, { + "@id" : "https://schema.org/recordingOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The composition this track is a recording of." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7877" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/recordingOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recordingOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7879" + } ] +}, { + "@id" : "https://schema.org/recourseLoan", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The only way you get the money back in the event of default is the security. Recourse is where you still have the opportunity to go back to the borrower for the rest of the money." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7884" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/recourseLoan" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "recourseLoan" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7886" + } ] +}, { + "@id" : "https://schema.org/referenceQuantity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The reference quantity for which a certain price applies, e.g. 1 EUR per 4 kWh of electricity. This property is a replacement for unitOfMeasurement for the advanced cases where the price does not relate to a standard unit." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7888" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/referenceQuantity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "referenceQuantity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7890" + } ] +}, { + "@id" : "https://schema.org/referencesOrder", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Order(s) related to this Invoice. One or more Orders may be combined into a single Invoice." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7895" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/referencesOrder" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "referencesOrder" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7897" + } ] +}, { + "@id" : "https://schema.org/refundType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A refund type, from an enumerated list." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7902" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/refundType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "refundType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7904" + } ] +}, { + "@id" : "https://schema.org/regionDrained", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The anatomical or organ system drained by this vessel; generally refers to a specific part of an organ." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7909" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/regionDrained" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "regionDrained" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7912" + } ] +}, { + "@id" : "https://schema.org/regionsAllowed", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The regions where the media is allowed. If not specified, then it's assumed to be allowed everywhere. Specify the countries in ISO 3166 format." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7918" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/regionsAllowed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "regionsAllowed" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7920" + } ] +}, { + "@id" : "https://schema.org/relatedAnatomy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Anatomical systems or structures that relate to the superficial anatomy." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7925" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/relatedAnatomy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "relatedAnatomy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7927" + } ] +}, { + "@id" : "https://schema.org/relatedCondition", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical condition associated with this anatomy." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7933" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/relatedCondition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "relatedCondition" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7937" + } ] +}, { + "@id" : "https://schema.org/relatedDrug", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any other drug related to this one, for example commonly-prescribed alternatives." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7942" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/relatedDrug" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "relatedDrug" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7944" + } ] +}, { + "@id" : "https://schema.org/relatedLink", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A link related to this web page, for example to other related web pages." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7949" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/relatedLink" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "relatedLink" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7951" + } ] +}, { + "@id" : "https://schema.org/relatedStructure", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Related anatomical structure(s) that are not part of the system but relate or connect to it, such as vascular bundles associated with an organ system." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7955" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/relatedStructure" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "relatedStructure" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7957" + } ] +}, { + "@id" : "https://schema.org/relatedTherapy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical therapy related to this anatomy." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7962" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/relatedTherapy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "relatedTherapy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7966" + } ] +}, { + "@id" : "https://schema.org/relatedTo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The most generic familial relation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7971" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/relatedTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "relatedTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7973" + } ] +}, { + "@id" : "https://schema.org/releaseDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The release date of a product or product model. This can be used to distinguish the exact variant of a product." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7978" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/releaseDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "releaseDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7980" + } ] +}, { + "@id" : "https://schema.org/releaseNotes", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Description of what changed in this version." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7982" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/releaseNotes" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "releaseNotes" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7984" + } ] +}, { + "@id" : "https://schema.org/releaseOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The album this is a release of." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7988" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/releaseOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "releaseOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7990" + } ] +}, { + "@id" : "https://schema.org/releasedEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The place and time the release was issued, expressed as a PublicationEvent." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid7995" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/releasedEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "releasedEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid7997" + } ] +}, { + "@id" : "https://schema.org/relevantOccupation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Occupation for the JobPosting." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8002" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/relevantOccupation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "relevantOccupation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8004" + } ] +}, { + "@id" : "https://schema.org/relevantSpecialty", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "If applicable, a medical specialty in which this entity is relevant." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8009" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/relevantSpecialty" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "relevantSpecialty" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8011" + } ] +}, { + "@id" : "https://schema.org/remainingAttendeeCapacity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of attendee places for an event that remain unallocated." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8016" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/remainingAttendeeCapacity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "remainingAttendeeCapacity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8018" + } ] +}, { + "@id" : "https://schema.org/renegotiableLoan", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Whether the terms for payment of interest can be renegotiated during the life of the loan." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8020" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/renegotiableLoan" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "renegotiableLoan" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8022" + } ] +}, { + "@id" : "https://schema.org/repeatCount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Defines the number of times a recurring Event will take place." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8024" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/repeatCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "repeatCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8026" + } ] +}, { + "@id" : "https://schema.org/repeatFrequency", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Defines the frequency at which Events will occur according to a schedule Schedule. The intervals between\n events should be defined as a Duration of time." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8028" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/repeatFrequency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "repeatFrequency" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8030" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/frequency" + } ] +}, { + "@id" : "https://schema.org/repetitions", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Number of times one should repeat the activity." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8035" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/repetitions" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "repetitions" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8037" + } ] +}, { + "@id" : "https://schema.org/replacee", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of object. The object that is being replaced." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8043" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/replacee" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "replacee" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8045" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/object" + } ] +}, { + "@id" : "https://schema.org/replacer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of object. The object that replaces." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8050" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/replacer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "replacer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8052" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/object" + } ] +}, { + "@id" : "https://schema.org/replyToUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The URL at which a reply may be posted to the specified UserComment." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8057" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/replyToUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "replyToUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8059" + } ] +}, { + "@id" : "https://schema.org/reportNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number or other unique designator assigned to a Report by the publishing organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8063" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/reportNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "reportNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8065" + } ] +}, { + "@id" : "https://schema.org/representativeOfPage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether this image is representative of the content of the page." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8069" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/representativeOfPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "representativeOfPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8071" + } ] +}, { + "@id" : "https://schema.org/requiredCollateral", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Assets required to secure loan or credit repayments. It may take form of third party pledge, goods, financial instruments (cash, securities, etc.)" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8073" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/requiredCollateral" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "requiredCollateral" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8075" + } ] +}, { + "@id" : "https://schema.org/requiredGender", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Audiences defined by a person's gender." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8080" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/requiredGender" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "requiredGender" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8082" + } ] +}, { + "@id" : "https://schema.org/requiredMaxAge", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Audiences defined by a person's maximum age." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8086" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/requiredMaxAge" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "requiredMaxAge" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8088" + } ] +}, { + "@id" : "https://schema.org/requiredMinAge", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Audiences defined by a person's minimum age." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8090" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/requiredMinAge" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "requiredMinAge" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8092" + } ] +}, { + "@id" : "https://schema.org/requiredQuantity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The required quantity of the item(s)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8094" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/requiredQuantity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "requiredQuantity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8096" + } ] +}, { + "@id" : "https://schema.org/requirements", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Component dependency requirements for application. This includes runtime environments and shared libraries that are not included in the application distribution package, but required to run the application (examples: DirectX, Java or .NET runtime)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8102" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/requirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "requirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8104" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/softwareRequirements" + } ] +}, { + "@id" : "https://schema.org/requiresSubscription", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates if use of the media require a subscription (either paid or free). Allowed values are true or false (note that an earlier version had 'yes', 'no')." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8108" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/requiresSubscription" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "requiresSubscription" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8111" + } ] +}, { + "@id" : "https://schema.org/reservationFor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The thing -- flight, event, restaurant, etc. being reserved." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8117" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/reservationFor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "reservationFor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8119" + } ] +}, { + "@id" : "https://schema.org/reservationId", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A unique identifier for the reservation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8124" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/reservationId" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "reservationId" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8126" + } ] +}, { + "@id" : "https://schema.org/reservationStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The current status of the reservation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8130" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/reservationStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "reservationStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8132" + } ] +}, { + "@id" : "https://schema.org/reservedTicket", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A ticket associated with the reservation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8137" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/reservedTicket" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "reservedTicket" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8139" + } ] +}, { + "@id" : "https://schema.org/responsibilities", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Responsibilities associated with this role or Occupation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8144" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/responsibilities" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "responsibilities" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8147" + } ] +}, { + "@id" : "https://schema.org/restPeriods", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "How often one should break from the activity." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8151" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/restPeriods" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "restPeriods" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8153" + } ] +}, { + "@id" : "https://schema.org/restockingFee", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Use MonetaryAmount to specify a fixed restocking fee for product returns, or use Number to specify a percentage of the product price paid by the customer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8158" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/restockingFee" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "restockingFee" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8160" + } ] +}, { + "@id" : "https://schema.org/result", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The result produced in the action. E.g. John wrote a book." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8166" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/result" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "result" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8168" + } ] +}, { + "@id" : "https://schema.org/resultComment", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of result. The Comment created or sent as a result of this action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8173" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/resultComment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "resultComment" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8176" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/result" + } ] +}, { + "@id" : "https://schema.org/resultReview", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of result. The review that resulted in the performing of the action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8181" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/resultReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "resultReview" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8183" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/result" + } ] +}, { + "@id" : "https://schema.org/returnFees", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of return fees for purchased products (for any return reason)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8188" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/returnFees" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "returnFees" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8190" + } ] +}, { + "@id" : "https://schema.org/returnLabelSource", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The method (from an enumeration) by which the customer obtains a return shipping label for a product returned for any reason." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8195" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/returnLabelSource" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "returnLabelSource" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8197" + } ] +}, { + "@id" : "https://schema.org/returnMethod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of return method offered, specified from an enumeration." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8202" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/returnMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "returnMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8204" + } ] +}, { + "@id" : "https://schema.org/returnPolicyCategory", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies an applicable return policy (from an enumeration)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8209" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/returnPolicyCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "returnPolicyCategory" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8212" + } ] +}, { + "@id" : "https://schema.org/returnPolicyCountry", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The country where the product has to be sent to for returns, for example \"Ireland\" using the name property of Country. You can also provide the two-letter ISO 3166-1 alpha-2 country code. Note that this can be different from the country where the product was originally shipped from or sent to." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8217" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/returnPolicyCountry" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "returnPolicyCountry" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8219" + } ] +}, { + "@id" : "https://schema.org/returnPolicySeasonalOverride", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Seasonal override of a return policy." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8224" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/returnPolicySeasonalOverride" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "returnPolicySeasonalOverride" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8226" + } ] +}, { + "@id" : "https://schema.org/returnShippingFeesAmount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Amount of shipping costs for product returns (for any reason). Applicable when property returnFees equals ReturnShippingFees." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8231" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/returnShippingFeesAmount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "returnShippingFeesAmount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8233" + } ] +}, { + "@id" : "https://schema.org/review", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A review of the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8238" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/review" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "review" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8247" + } ] +}, { + "@id" : "https://schema.org/reviewAspect", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This Review or Rating is relevant to this part or facet of the itemReviewed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8252" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/reviewAspect" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "reviewAspect" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8256" + } ] +}, { + "@id" : "https://schema.org/reviewBody", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The actual body of the review." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8260" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/reviewBody" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "reviewBody" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8262" + } ] +}, { + "@id" : "https://schema.org/reviewCount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The count of total number of reviews." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8266" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/reviewCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "reviewCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8268" + } ] +}, { + "@id" : "https://schema.org/reviewRating", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The rating given in this review. Note that reviews can themselves be rated. The reviewRating applies to rating given by the review. The aggregateRating property applies to the review itself, as a creative work." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8270" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/reviewRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "reviewRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8272" + } ] +}, { + "@id" : "https://schema.org/reviewedBy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "People or organizations that have reviewed the content on this web page for accuracy and/or completeness." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8277" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/reviewedBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "reviewedBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8279" + } ] +}, { + "@id" : "https://schema.org/reviews", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Review of the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8285" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/reviews" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "reviews" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8291" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/review" + } ] +}, { + "@id" : "https://schema.org/riskFactor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A modifiable or non-modifiable factor that increases the risk of a patient contracting this condition, e.g. age, coexisting condition." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8296" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/riskFactor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "riskFactor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8298" + } ] +}, { + "@id" : "https://schema.org/risks", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specific physiologic risks associated to the diet plan." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8303" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/risks" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "risks" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8305" + } ] +}, { + "@id" : "https://schema.org/roleName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A role played, performed or filled by a person or organization. For example, the team of creators for a comic book might fill the roles named 'inker', 'penciller', and 'letterer'; or an athlete in a SportsTeam might play in the position named 'Quarterback'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8309" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/roleName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "roleName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8311" + } ] +}, { + "@id" : "https://schema.org/roofLoad", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The permitted total weight of cargo and installations (e.g. a roof rack) on top of the vehicle.

\n\nTypical unit code(s): KGM for kilogram, LBR for pound

\n\n\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8315" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/roofLoad" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "roofLoad" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8318" + } ] +}, { + "@id" : "https://schema.org/rsvpResponse", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The response (yes, no, maybe) to the RSVP." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8323" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/rsvpResponse" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "rsvpResponse" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8325" + } ] +}, { + "@id" : "https://schema.org/runsTo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The vasculature the lymphatic structure runs, or efferents, to." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8330" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/runsTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "runsTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8332" + } ] +}, { + "@id" : "https://schema.org/runtime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Runtime platform or script interpreter dependencies (example: Java v1, Python 2.3, .NET Framework 3.0)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8337" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/runtime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "runtime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8339" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/runtimePlatform" + } ] +}, { + "@id" : "https://schema.org/runtimePlatform", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Runtime platform or script interpreter dependencies (example: Java v1, Python 2.3, .NET Framework 3.0)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8343" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/runtimePlatform" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "runtimePlatform" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8345" + } ] +}, { + "@id" : "https://schema.org/rxcui", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The RxCUI drug identifier from RXNORM." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8349" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/rxcui" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "rxcui" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8351" + } ] +}, { + "@id" : "https://schema.org/safetyConsideration", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any potential safety concern associated with the supplement. May include interactions with other drugs and foods, pregnancy, breastfeeding, known adverse reactions, and documented efficacy of the supplement." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8355" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/safetyConsideration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "safetyConsideration" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8357" + } ] +}, { + "@id" : "https://schema.org/salaryCurrency", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The currency (coded using ISO 4217) used for the main salary information in this job posting or for this employee." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8361" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/salaryCurrency" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "salaryCurrency" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8364" + } ] +}, { + "@id" : "https://schema.org/salaryUponCompletion", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The expected salary upon completing the training." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8368" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/salaryUponCompletion" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "salaryUponCompletion" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8370" + } ] +}, { + "@id" : "https://schema.org/sameAs", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "URL of a reference Web page that unambiguously indicates the item's identity. E.g. the URL of the item's Wikipedia page, Wikidata entry, or official website." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8375" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/sameAs" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sameAs" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8377" + } ] +}, { + "@id" : "https://schema.org/sampleType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "What type of code sample: full (compile ready) solution, code snippet, inline code, scripts, template." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8381" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/sampleType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sampleType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8383" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/codeSampleType" + } ] +}, { + "@id" : "https://schema.org/saturatedFatContent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of grams of saturated fat." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8387" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/saturatedFatContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "saturatedFatContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8389" + } ] +}, { + "@id" : "https://schema.org/scheduleTimezone", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the timezone for which the time(s) indicated in the Schedule are given. The value provided should be among those listed in the IANA Time Zone Database." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8394" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/scheduleTimezone" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "scheduleTimezone" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8396" + } ] +}, { + "@id" : "https://schema.org/scheduledPaymentDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date the invoice is scheduled to be paid." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8400" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/scheduledPaymentDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "scheduledPaymentDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8402" + } ] +}, { + "@id" : "https://schema.org/scheduledTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The time the object is scheduled to." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8404" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/scheduledTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "scheduledTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8406" + } ] +}, { + "@id" : "https://schema.org/schemaVersion", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates (by URL or string) a particular version of a schema used in some CreativeWork. This property was created primarily to\n indicate the use of a specific schema.org release, e.g. 10.0 as a simple string, or more explicitly via URL, https://schema.org/docs/releases.html#v10.0. There may be situations in which other schemas might usefully be referenced this way, e.g. http://dublincore.org/specifications/dublin-core/dces/1999-07-02/ but this has not been carefully explored in the community." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8409" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/schemaVersion" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "schemaVersion" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8411" + } ] +}, { + "@id" : "https://schema.org/schoolClosuresInfo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Information about school closures." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8415" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/schoolClosuresInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "schoolClosuresInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8417" + } ] +}, { + "@id" : "https://schema.org/screenCount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of screens in the movie theater." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8422" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/screenCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "screenCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8424" + } ] +}, { + "@id" : "https://schema.org/screenshot", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A link to a screenshot image of the app." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8426" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/screenshot" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "screenshot" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8428" + } ] +}, { + "@id" : "https://schema.org/sdDatePublished", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the date on which the current structured data was generated / published. Typically used alongside sdPublisher." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8433" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/sdDatePublished" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sdDatePublished" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8435" + } ] +}, { + "@id" : "https://schema.org/sdLicense", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A license document that applies to this structured data, typically indicated by URL." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8437" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/sdLicense" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sdLicense" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8439" + } ] +}, { + "@id" : "https://schema.org/sdPublisher", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the party responsible for generating and publishing the current structured data markup, typically in cases where the structured data is derived automatically from existing published content but published on a different site. For example, student projects and open data initiatives often re-publish existing content with more explicitly structured metadata. The\nsdPublisher property helps make such practices more explicit." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8444" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/sdPublisher" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sdPublisher" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8446" + } ] +}, { + "@id" : "https://schema.org/season", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A season in a media series." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8452" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/season" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "season" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8456" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/hasPart" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/containsSeason" + } ] +}, { + "@id" : "https://schema.org/seasonNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Position of the season within an ordered group of seasons." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8461" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/seasonNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "seasonNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8463" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/position" + } ] +}, { + "@id" : "https://schema.org/seasons", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A season in a media series." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8468" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/seasons" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "seasons" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8472" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/season" + } ] +}, { + "@id" : "https://schema.org/seatNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The location of the reserved seat (e.g., 27)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8477" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/seatNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "seatNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8479" + } ] +}, { + "@id" : "https://schema.org/seatRow", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The row location of the reserved seat (e.g., B)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8483" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/seatRow" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "seatRow" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8485" + } ] +}, { + "@id" : "https://schema.org/seatSection", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The section location of the reserved seat (e.g. Orchestra)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8489" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/seatSection" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "seatSection" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8491" + } ] +}, { + "@id" : "https://schema.org/seatingCapacity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of persons that can be seated (e.g. in a vehicle), both in terms of the physical space available, and in terms of limitations set by law.

\n\nTypical unit code(s): C62 for persons." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8495" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/seatingCapacity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "seatingCapacity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8497" + } ] +}, { + "@id" : "https://schema.org/seatingType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type/class of the seat." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8503" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/seatingType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "seatingType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8505" + } ] +}, { + "@id" : "https://schema.org/secondaryPrevention", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A preventative therapy used to prevent reoccurrence of the medical condition after an initial episode of the condition." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8510" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/secondaryPrevention" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "secondaryPrevention" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8512" + } ] +}, { + "@id" : "https://schema.org/securityClearanceRequirement", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A description of any security clearance requirements of the job." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8517" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/securityClearanceRequirement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "securityClearanceRequirement" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8519" + } ] +}, { + "@id" : "https://schema.org/securityScreening", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of security screening the passenger is subject to." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8523" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/securityScreening" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "securityScreening" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8525" + } ] +}, { + "@id" : "https://schema.org/seeks", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A pointer to products or services sought by the organization or person (demand)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8529" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/seeks" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "seeks" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8532" + } ] +}, { + "@id" : "https://schema.org/seller", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8537" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/seller" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "seller" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8543" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/participant" + } ] +}, { + "@id" : "https://schema.org/sender", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of participant. The participant who is at the sending end of the action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8549" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/sender" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sender" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8552" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/participant" + } ] +}, { + "@id" : "https://schema.org/sensoryRequirement", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A description of any sensory requirements and levels necessary to function on the job, including hearing and vision. Defined terms such as those in O*net may be used, but note that there is no way to specify the level of ability as well as its nature when using a defined term." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8559" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/sensoryRequirement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sensoryRequirement" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8561" + } ] +}, { + "@id" : "https://schema.org/sensoryUnit", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The neurological pathway extension that inputs and sends information to the brain or spinal cord." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8566" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/sensoryUnit" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sensoryUnit" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8568" + } ] +}, { + "@id" : "https://schema.org/serialNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The serial number or any alphanumeric identifier of a particular product. When attached to an offer, it is a shortcut for the serial number of the product included in the offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8574" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/serialNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "serialNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8578" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/seriousAdverseOutcome", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A possible serious complication and/or serious side effect of this therapy. Serious adverse outcomes include those that are life-threatening; result in death, disability, or permanent damage; require hospitalization or prolong existing hospitalization; cause congenital anomalies or birth defects; or jeopardize the patient and may require medical or surgical intervention to prevent one of the outcomes in this definition." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8582" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/seriousAdverseOutcome" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "seriousAdverseOutcome" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8585" + } ] +}, { + "@id" : "https://schema.org/serverStatus", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Status of a game server." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8590" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/serverStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "serverStatus" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8592" + } ] +}, { + "@id" : "https://schema.org/servesCuisine", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The cuisine of the restaurant." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8597" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/servesCuisine" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "servesCuisine" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8599" + } ] +}, { + "@id" : "https://schema.org/serviceArea", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The geographic area where the service is provided." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8603" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/serviceArea" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "serviceArea" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8607" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/areaServed" + } ] +}, { + "@id" : "https://schema.org/serviceAudience", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The audience eligible for this service." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8614" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/serviceAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "serviceAudience" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8616" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/audience" + } ] +}, { + "@id" : "https://schema.org/serviceLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The location (e.g. civic structure, local business, etc.) where a person can go to access the service." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8621" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/serviceLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "serviceLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8623" + } ] +}, { + "@id" : "https://schema.org/serviceOperator", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The operating organization, if different from the provider. This enables the representation of services that are provided by an organization, but operated by another organization like a subcontractor." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8628" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/serviceOperator" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "serviceOperator" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8630" + } ] +}, { + "@id" : "https://schema.org/serviceOutput", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The tangible thing generated by the service, e.g. a passport, permit, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8635" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/serviceOutput" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "serviceOutput" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8637" + } ] +}, { + "@id" : "https://schema.org/servicePhone", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The phone number to use to access the service." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8642" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/servicePhone" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "servicePhone" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8644" + } ] +}, { + "@id" : "https://schema.org/servicePostalAddress", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The address for accessing the service by mail." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8649" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/servicePostalAddress" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "servicePostalAddress" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8651" + } ] +}, { + "@id" : "https://schema.org/serviceSmsNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number to access the service by text message." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8656" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/serviceSmsNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "serviceSmsNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8658" + } ] +}, { + "@id" : "https://schema.org/serviceType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of service being offered, e.g. veterans' benefits, emergency relief, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8663" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/serviceType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "serviceType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8665" + } ] +}, { + "@id" : "https://schema.org/serviceUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The website to access the service." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8670" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/serviceUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "serviceUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8672" + } ] +}, { + "@id" : "https://schema.org/servingSize", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The serving size, in terms of the number of volume or mass." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8676" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/servingSize" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "servingSize" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8678" + } ] +}, { + "@id" : "https://schema.org/sha256", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The SHA-2 SHA256 hash of the content of the item. For example, a zero-length input has value 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8682" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/sha256" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sha256" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8684" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/description" + } ] +}, { + "@id" : "https://schema.org/sharedContent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A CreativeWork such as an image, video, or audio clip shared as part of this posting." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8688" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/sharedContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sharedContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8691" + } ] +}, { + "@id" : "https://schema.org/shippingDestination", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "indicates (possibly multiple) shipping destinations. These can be defined in several ways, e.g. postalCode ranges." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8696" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/shippingDestination" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "shippingDestination" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8700" + } ] +}, { + "@id" : "https://schema.org/shippingDetails", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates information about the shipping policies and options associated with an Offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8705" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/shippingDetails" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "shippingDetails" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8707" + } ] +}, { + "@id" : "https://schema.org/shippingLabel", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Label to match an OfferShippingDetails with a ShippingRateSettings (within the context of a shippingSettingsLink cross-reference)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8712" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/shippingLabel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "shippingLabel" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8715" + } ] +}, { + "@id" : "https://schema.org/shippingOrigin", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the origin of a shipment, i.e. where it should be coming from." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8719" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/shippingOrigin" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "shippingOrigin" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8721" + } ] +}, { + "@id" : "https://schema.org/shippingRate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The shipping rate is the cost of shipping to the specified destination. Typically, the maxValue and currency values (of the MonetaryAmount) are most appropriate." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8726" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/shippingRate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "shippingRate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8729" + } ] +}, { + "@id" : "https://schema.org/shippingSettingsLink", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Link to a page containing ShippingRateSettings and DeliveryTimeSettings details." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8734" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/shippingSettingsLink" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "shippingSettingsLink" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8736" + } ] +}, { + "@id" : "https://schema.org/sibling", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sibling of the person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8740" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/sibling" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sibling" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8742" + } ] +}, { + "@id" : "https://schema.org/siblings", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sibling of the person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8747" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/siblings" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "siblings" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8749" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/sibling" + } ] +}, { + "@id" : "https://schema.org/signDetected", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sign detected by the test." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8754" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/signDetected" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "signDetected" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8756" + } ] +}, { + "@id" : "https://schema.org/signOrSymptom", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sign or symptom of this condition. Signs are objective or physically observable manifestations of the medical condition while symptoms are the subjective experience of the medical condition." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8761" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/signOrSymptom" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "signOrSymptom" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8763" + } ] +}, { + "@id" : "https://schema.org/significance", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The significance associated with the superficial anatomy; as an example, how characteristics of the superficial anatomy can suggest underlying medical conditions or courses of treatment." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8768" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/significance" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "significance" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8770" + } ] +}, { + "@id" : "https://schema.org/significantLink", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "One of the more significant URLs on the page. Typically, these are the non-navigation links that are clicked on the most." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8774" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/significantLink" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "significantLink" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8776" + } ] +}, { + "@id" : "https://schema.org/significantLinks", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The most significant URLs on the page. Typically, these are the non-navigation links that are clicked on the most." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8780" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/significantLinks" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "significantLinks" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8782" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/significantLink" + } ] +}, { + "@id" : "https://schema.org/size", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A standardized size of a product or creative work, specified either through a simple textual string (for example 'XL', '32Wx34L'), a QuantitativeValue with a unitCode, or a comprehensive and structured SizeSpecification; in other cases, the width, height, depth and weight properties may be more applicable." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8786" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/size" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "size" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8789" + } ] +}, { + "@id" : "https://schema.org/sizeGroup", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The size group (also known as \"size type\") for a product's size. Size groups are common in the fashion industry to define size segments and suggested audiences for wearable products. Multiple values can be combined, for example \"men's big and tall\", \"petite maternity\" or \"regular\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8796" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/sizeGroup" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sizeGroup" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8798" + } ] +}, { + "@id" : "https://schema.org/sizeSystem", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The size system used to identify a product's size. Typically either a standard (for example, \"GS1\" or \"ISO-EN13402\"), country code (for example \"US\" or \"JP\"), or a measuring system (for example \"Metric\" or \"Imperial\")." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8803" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/sizeSystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sizeSystem" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8805" + } ] +}, { + "@id" : "https://schema.org/skills", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A statement of knowledge, skill, ability, task or any other assertion expressing a competency that is desired or required to fulfill this role or to work in this occupation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8810" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/skills" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "skills" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8813" + } ] +}, { + "@id" : "https://schema.org/sku", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Stock Keeping Unit (SKU), i.e. a merchant-specific identifier for a product or service, or the product to which the offer refers." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8818" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/sku" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sku" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8822" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/slogan", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A slogan or motto associated with the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8826" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/slogan" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "slogan" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8832" + } ] +}, { + "@id" : "https://schema.org/smiles", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A specification in form of a line notation for describing the structure of chemical species using short ASCII strings. Double bond stereochemistry \\ indicators may need to be escaped in the string in formats where the backslash is an escape character." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8836" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/smiles" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "smiles" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8838" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/hasRepresentation" + } ] +}, { + "@id" : "https://schema.org/smokingAllowed", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether it is allowed to smoke in the place, e.g. in the restaurant, hotel or hotel room." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8842" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/smokingAllowed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "smokingAllowed" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8844" + } ] +}, { + "@id" : "https://schema.org/sodiumContent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of milligrams of sodium." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8846" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/sodiumContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sodiumContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8848" + } ] +}, { + "@id" : "https://schema.org/softwareAddOn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Additional content for a software application." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8853" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/softwareAddOn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "softwareAddOn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8855" + } ] +}, { + "@id" : "https://schema.org/softwareHelp", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Software application help." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8860" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/softwareHelp" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "softwareHelp" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8862" + } ] +}, { + "@id" : "https://schema.org/softwareRequirements", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Component dependency requirements for application. This includes runtime environments and shared libraries that are not included in the application distribution package, but required to run the application (examples: DirectX, Java or .NET runtime)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8867" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/softwareRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "softwareRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8869" + } ] +}, { + "@id" : "https://schema.org/softwareVersion", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Version of the software instance." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8873" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/softwareVersion" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "softwareVersion" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8875" + } ] +}, { + "@id" : "https://schema.org/sourceOrganization", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Organization on whose behalf the creator was working." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8879" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/sourceOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sourceOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8881" + } ] +}, { + "@id" : "https://schema.org/sourcedFrom", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The neurological pathway that originates the neurons." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8886" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/sourcedFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sourcedFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8888" + } ] +}, { + "@id" : "https://schema.org/spatial", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The \"spatial\" property can be used in cases when more specific properties\n(e.g. locationCreated, spatialCoverage, contentLocation) are not known to be appropriate." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8893" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/spatial" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "spatial" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8895" + } ] +}, { + "@id" : "https://schema.org/spatialCoverage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The spatialCoverage of a CreativeWork indicates the place(s) which are the focus of the content. It is a subproperty of\n contentLocation intended primarily for more technical and detailed materials. For example with a Dataset, it indicates\n areas that the dataset describes: a dataset of New York weather would have spatialCoverage which was the place: the state of New York." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8900" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/spatialCoverage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "spatialCoverage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8902" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/contentLocation" + } ] +}, { + "@id" : "https://schema.org/speakable", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates sections of a Web page that are particularly 'speakable' in the sense of being highlighted as being especially appropriate for text-to-speech conversion. Other sections of a page may also be usefully spoken in particular circumstances; the 'speakable' property serves to indicate the parts most likely to be generally useful for speech.

\n\nThe speakable property can be repeated an arbitrary number of times, with three kinds of possible 'content-locator' values:

\n\n1.) id-value URL references - uses id-value of an element in the page being annotated. The simplest use of speakable has (potentially relative) URL values, referencing identified sections of the document concerned.

\n\n2.) CSS Selectors - addresses content in the annotated page, e.g. via class attribute. Use the cssSelector property.

\n\n3.) XPaths - addresses content via XPaths (assuming an XML view of the content). Use the xpath property.

\n\nFor more sophisticated markup of speakable sections beyond simple ID references, either CSS selectors or XPath expressions to pick out document section(s) as speakable. For this\nwe define a supporting type, SpeakableSpecification which is defined to be a possible value of the speakable property." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8907" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/speakable" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "speakable" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8910" + } ] +}, { + "@id" : "https://schema.org/specialCommitments", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any special commitments associated with this job posting. Valid entries include VeteranCommit, MilitarySpouseCommit, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8915" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/specialCommitments" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "specialCommitments" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8917" + } ] +}, { + "@id" : "https://schema.org/specialOpeningHoursSpecification", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The special opening hours of a certain place.

\n\nUse this to explicitly override general opening hours brought in scope by openingHoursSpecification or openingHours." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8921" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/specialOpeningHoursSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "specialOpeningHoursSpecification" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8923" + } ] +}, { + "@id" : "https://schema.org/specialty", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "One of the domain specialities to which this web page's content applies." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8928" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/specialty" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "specialty" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8930" + } ] +}, { + "@id" : "https://schema.org/speechToTextMarkup", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Form of markup used. eg. SSML or IPA." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8935" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/speechToTextMarkup" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "speechToTextMarkup" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8937" + } ] +}, { + "@id" : "https://schema.org/speed", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The speed range of the vehicle. If the vehicle is powered by an engine, the upper limit of the speed range (indicated by maxValue) should be the maximum speed achievable under regular conditions.

\n\nTypical unit code(s): KMH for km/h, HM for mile per hour (0.447 04 m/s), KNT for knot

\n\n*Note 1: Use minValue and maxValue to indicate the range. Typically, the minimal value is zero.\n* Note 2: There are many different ways of measuring the speed range. You can link to information about how the given value has been determined using the valueReference property." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8941" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/speed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "speed" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8943" + } ] +}, { + "@id" : "https://schema.org/spokenByCharacter", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The (e.g. fictional) character, Person or Organization to whom the quotation is attributed within the containing CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8948" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/spokenByCharacter" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "spokenByCharacter" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8950" + } ] +}, { + "@id" : "https://schema.org/sponsor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8956" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/sponsor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sponsor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8963" + } ] +}, { + "@id" : "https://schema.org/sport", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A type of sport (e.g. Baseball)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8969" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/sport" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sport" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8972" + } ] +}, { + "@id" : "https://schema.org/sportsActivityLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of location. The sports activity location where this action occurred." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8976" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/sportsActivityLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sportsActivityLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8978" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/location" + } ] +}, { + "@id" : "https://schema.org/sportsEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of location. The sports event where this action occurred." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8983" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/sportsEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sportsEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8985" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/location" + } ] +}, { + "@id" : "https://schema.org/sportsTeam", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of participant. The sports team that participated on this action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8990" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/sportsTeam" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sportsTeam" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8992" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/participant" + } ] +}, { + "@id" : "https://schema.org/spouse", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The person's spouse." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid8997" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/spouse" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "spouse" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid8999" + } ] +}, { + "@id" : "https://schema.org/stage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The stage of the condition, if applicable." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9004" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/stage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "stage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9006" + } ] +}, { + "@id" : "https://schema.org/stageAsNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The stage represented as a number, e.g. 3." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9011" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/stageAsNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "stageAsNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9013" + } ] +}, { + "@id" : "https://schema.org/starRating", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An official rating for a lodging business or food establishment, e.g. from national associations or standards bodies. Use the author property to indicate the rating organization, e.g. as an Organization with name such as (e.g. HOTREC, DEHOGA, WHR, or Hotelstars)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9015" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/starRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "starRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9018" + } ] +}, { + "@id" : "https://schema.org/startDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The start date and time of the item (in ISO 8601 date format)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9023" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/startDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "startDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9032" + } ] +}, { + "@id" : "https://schema.org/startOffset", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The start time of the clip expressed as the number of seconds from the beginning of the work." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9035" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/startOffset" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "startOffset" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9038" + } ] +}, { + "@id" : "https://schema.org/startTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The startTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to start. For actions that span a period of time, when the action was performed. E.g. John wrote a book from January to December. For media, including audio and video, it's the time offset of the start of a clip within a larger file.

\n\nNote that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9044" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/startTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "startTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9050" + } ] +}, { + "@id" : "https://schema.org/statType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the kind of statistic represented by a StatisticalVariable, e.g. mean, count etc. The value of statType is a property, either from within Schema.org (e.g. count, median, marginOfError, maxValue, minValue) or from other compatible (e.g. RDF) systems such as DataCommons.org or Wikidata.org." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9053" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/statType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "statType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9055" + } ] +}, { + "@id" : "https://schema.org/status", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The status of the study (enumerated)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9060" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/status" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "status" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9064" + } ] +}, { + "@id" : "https://schema.org/steeringPosition", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The position of the steering wheel or similar device (mostly for cars)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9070" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/steeringPosition" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "steeringPosition" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9072" + } ] +}, { + "@id" : "https://schema.org/step", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A single step item (as HowToStep, text, document, video, etc.) or a HowToSection." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9077" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/step" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "step" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9079" + } ] +}, { + "@id" : "https://schema.org/stepValue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The stepValue attribute indicates the granularity that is expected (and required) of the value in a PropertyValueSpecification." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9086" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/stepValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "stepValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9088" + } ] +}, { + "@id" : "https://schema.org/steps", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A single step item (as HowToStep, text, document, video, etc.) or a HowToSection (originally misnamed 'steps'; 'step' is preferred)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9090" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/steps" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "steps" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9093" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/step" + } ] +}, { + "@id" : "https://schema.org/storageRequirements", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Storage requirements (free space required)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9099" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/storageRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "storageRequirements" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9101" + } ] +}, { + "@id" : "https://schema.org/streetAddress", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The street address. For example, 1600 Amphitheatre Pkwy." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9105" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/streetAddress" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "streetAddress" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9107" + } ] +}, { + "@id" : "https://schema.org/strengthUnit", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The units of an active ingredient's strength, e.g. mg." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9111" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/strengthUnit" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "strengthUnit" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9113" + } ] +}, { + "@id" : "https://schema.org/strengthValue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The value of an active ingredient's strength, e.g. 325." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9117" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/strengthValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "strengthValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9119" + } ] +}, { + "@id" : "https://schema.org/structuralClass", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The name given to how bone physically connects to each other." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9121" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/structuralClass" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "structuralClass" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9123" + } ] +}, { + "@id" : "https://schema.org/study", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical study or trial related to this entity." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9127" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/study" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "study" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9129" + } ] +}, { + "@id" : "https://schema.org/studyDesign", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifics about the observational study design (enumerated)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9134" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/studyDesign" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "studyDesign" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9136" + } ] +}, { + "@id" : "https://schema.org/studyLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The location in which the study is taking/took place." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9141" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/studyLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "studyLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9143" + } ] +}, { + "@id" : "https://schema.org/studySubject", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A subject of the study, i.e. one of the medical conditions, therapies, devices, drugs, etc. investigated by the study." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9148" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/studySubject" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "studySubject" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9150" + } ] +}, { + "@id" : "https://schema.org/stupidProperty", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "This is a StupidProperty! - for testing only." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9155" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://attic.schema.org/stupidProperty" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "stupidProperty" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9158" + } ] +}, { + "@id" : "https://schema.org/subEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An Event that is part of this event. For example, a conference event includes many presentations, each of which is a subEvent of the conference." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9163" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/subEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "subEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9165" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/superEvent" + } ] +}, { + "@id" : "https://schema.org/subEvents", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Events that are a part of this event. For example, a conference event includes many presentations, each subEvents of the conference." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9170" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/subEvents" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "subEvents" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9172" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/subEvent" + } ] +}, { + "@id" : "https://schema.org/subOrganization", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A relationship between two organizations where the first includes the second, e.g., as a subsidiary. See also: the more specific 'department' property." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9177" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/subOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "subOrganization" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9179" + } ] +}, { + "@id" : "https://schema.org/subReservation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The individual reservations included in the package. Typically a repeated property." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9184" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/subReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "subReservation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9186" + } ] +}, { + "@id" : "https://schema.org/subStageSuffix", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The substage, e.g. 'a' for Stage IIIa." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9191" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/subStageSuffix" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "subStageSuffix" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9193" + } ] +}, { + "@id" : "https://schema.org/subStructure", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Component (sub-)structure(s) that comprise this anatomical structure." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9197" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/subStructure" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "subStructure" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9199" + } ] +}, { + "@id" : "https://schema.org/subTest", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A component test of the panel." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9204" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/subTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "subTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9206" + } ] +}, { + "@id" : "https://schema.org/subTrip", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Identifies a Trip that is a subTrip of this Trip. For example Day 1, Day 2, etc. of a multi-day trip." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9211" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/subTrip" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "subTrip" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9213" + } ] +}, { + "@id" : "https://schema.org/subjectOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A CreativeWork or Event about this Thing." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9218" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/subjectOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "subjectOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9220" + } ] +}, { + "@id" : "https://schema.org/subtitleLanguage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Languages in which subtitles/captions are available, in IETF BCP 47 standard format." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9226" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/subtitleLanguage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "subtitleLanguage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9231" + } ] +}, { + "@id" : "https://schema.org/successorOf", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A pointer from a newer variant of a product to its previous, often discontinued predecessor." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9236" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/successorOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "successorOf" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9238" + } ] +}, { + "@id" : "https://schema.org/sugarContent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of grams of sugar." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9243" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/sugarContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "sugarContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9245" + } ] +}, { + "@id" : "https://schema.org/suggestedAge", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The age or age range for the intended audience or person, for example 3-12 months for infants, 1-5 years for toddlers." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9250" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/suggestedAge" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "suggestedAge" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9253" + } ] +}, { + "@id" : "https://schema.org/suggestedAnswer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An answer (possibly one of several, possibly incorrect) to a Question, e.g. on a Question/Answer site." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9258" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/suggestedAnswer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "suggestedAnswer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9260" + } ] +}, { + "@id" : "https://schema.org/suggestedGender", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The suggested gender of the intended person or audience, for example \"male\", \"female\", or \"unisex\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9266" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/suggestedGender" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "suggestedGender" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9269" + } ] +}, { + "@id" : "https://schema.org/suggestedMaxAge", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Maximum recommended age in years for the audience or user." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9274" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/suggestedMaxAge" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "suggestedMaxAge" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9276" + } ] +}, { + "@id" : "https://schema.org/suggestedMeasurement", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A suggested range of body measurements for the intended audience or person, for example inseam between 32 and 34 inches or height between 170 and 190 cm. Typically found on a size chart for wearable products." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9278" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/suggestedMeasurement" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "suggestedMeasurement" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9281" + } ] +}, { + "@id" : "https://schema.org/suggestedMinAge", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Minimum recommended age in years for the audience or user." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9286" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/suggestedMinAge" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "suggestedMinAge" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9288" + } ] +}, { + "@id" : "https://schema.org/suitableForDiet", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a dietary restriction or guideline for which this recipe or menu item is suitable, e.g. diabetic, halal etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9290" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/suitableForDiet" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "suitableForDiet" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9293" + } ] +}, { + "@id" : "https://schema.org/superEvent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An event that this event is a part of. For example, a collection of individual music performances might each have a music festival as their superEvent." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9298" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/superEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "superEvent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9300" + } ] +}, { + "@id" : "https://schema.org/supersededBy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Relates a term (i.e. a property, class or enumeration) to one that supersedes it." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9305" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://meta.schema.org/supersededBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "supersededBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9309" + } ] +}, { + "@id" : "https://schema.org/supply", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub-property of instrument. A supply consumed when performing instructions or a direction." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9316" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/supply" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "supply" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9319" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/instrument" + } ] +}, { + "@id" : "https://schema.org/supplyTo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The area to which the artery supplies blood." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9324" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/supplyTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "supplyTo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9326" + } ] +}, { + "@id" : "https://schema.org/supportingData", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Supporting data for a SoftwareApplication." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9331" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/supportingData" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "supportingData" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9333" + } ] +}, { + "@id" : "https://schema.org/surface", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A material used as a surface in some artwork, e.g. Canvas, Paper, Wood, Board, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9338" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/surface" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "surface" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9340" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/material" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/artworkSurface" + } ] +}, { + "@id" : "https://schema.org/syllabusSections", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates (typically several) Syllabus entities that lay out what each section of the overall course will cover." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9344" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/syllabusSections" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "syllabusSections" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9346" + } ] +}, { + "@id" : "https://schema.org/target", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a target EntryPoint, or url, for an Action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9351" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/target" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "target" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9353" + } ] +}, { + "@id" : "https://schema.org/targetCollection", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of object. The collection target of the action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9358" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/targetCollection" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "targetCollection" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9360" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/object" + } ] +}, { + "@id" : "https://schema.org/targetDescription", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The description of a node in an established educational framework." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9365" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/targetDescription" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "targetDescription" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9367" + } ] +}, { + "@id" : "https://schema.org/targetName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The name of a node in an established educational framework." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9371" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/targetName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "targetName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9373" + } ] +}, { + "@id" : "https://schema.org/targetPlatform", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Type of app development: phone, Metro style, desktop, XBox, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9377" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/targetPlatform" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "targetPlatform" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9379" + } ] +}, { + "@id" : "https://schema.org/targetPopulation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Characteristics of the population for which this is intended, or which typically uses it, e.g. 'adults'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9383" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/targetPopulation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "targetPopulation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9386" + } ] +}, { + "@id" : "https://schema.org/targetProduct", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Target Operating System / Product to which the code applies. If applies to several versions, just the product name can be used." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9390" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/targetProduct" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "targetProduct" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9392" + } ] +}, { + "@id" : "https://schema.org/targetUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The URL of a node in an established educational framework." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9397" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/targetUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "targetUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9399" + } ] +}, { + "@id" : "https://schema.org/taxID", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Tax / Fiscal ID of the organization or person, e.g. the TIN in the US or the CIF/NIF in Spain." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9403" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/taxID" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "taxID" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9406" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/taxonRank", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The taxonomic rank of this taxon given preferably as a URI from a controlled vocabulary – typically the ranks from TDWG TaxonRank ontology or equivalent Wikidata URIs." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9410" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/taxonRank" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "taxonRank" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9412" + } ] +}, { + "@id" : "https://schema.org/taxonomicRange", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The taxonomic grouping of the organism that expresses, encodes, or in some way related to the BioChemEntity." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9417" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/taxonomicRange" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "taxonomicRange" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9419" + } ] +}, { + "@id" : "https://schema.org/teaches", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The item being described is intended to help a person learn the competency or learning outcome defined by the referenced term." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9425" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/teaches" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "teaches" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9429" + } ] +}, { + "@id" : "https://schema.org/telephone", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The telephone number." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9434" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/telephone" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "telephone" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9439" + } ] +}, { + "@id" : "https://schema.org/temporal", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The \"temporal\" property can be used in cases where more specific properties\n(e.g. temporalCoverage, dateCreated, dateModified, datePublished) are not known to be appropriate." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9443" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/temporal" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "temporal" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9445" + } ] +}, { + "@id" : "https://schema.org/temporalCoverage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The temporalCoverage of a CreativeWork indicates the period that the content applies to, i.e. that it describes, either as a DateTime or as a textual string indicating a time period in ISO 8601 time interval format. In\n the case of a Dataset it will typically indicate the relevant time period in a precise notation (e.g. for a 2011 census dataset, the year 2011 would be written \"2011/2012\"). Other forms of content, e.g. ScholarlyArticle, Book, TVSeries or TVEpisode, may indicate their temporalCoverage in broader terms - textually or via well-known URL.\n Written works such as books may sometimes have precise temporal coverage too, e.g. a work set in 1939 - 1945 can be indicated in ISO 8601 interval format format via \"1939/1945\".

\n\nOpen-ended date ranges can be written with \"..\" in place of the end date. For example, \"2015-11/..\" indicates a range beginning in November 2015 and with no specified final date. This is tentative and might be updated in future when ISO 8601 is officially updated." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9450" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/temporalCoverage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "temporalCoverage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9452" + } ] +}, { + "@id" : "https://schema.org/termCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A code that identifies this DefinedTerm within a DefinedTermSet." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9457" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/termCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "termCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9459" + } ] +}, { + "@id" : "https://schema.org/termDuration", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The amount of time in a term as defined by the institution. A term is a length of time where students take one or more classes. Semesters and quarters are common units for term." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9463" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/termDuration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "termDuration" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9465" + } ] +}, { + "@id" : "https://schema.org/termsOfService", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Human-readable terms of service documentation." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9470" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/termsOfService" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "termsOfService" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9472" + } ] +}, { + "@id" : "https://schema.org/termsPerYear", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of times terms of study are offered per year. Semesters and quarters are common units for term. For example, if the student can only take 2 semesters for the program in one year, then termsPerYear should be 2." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9476" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/termsPerYear" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "termsPerYear" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9478" + } ] +}, { + "@id" : "https://schema.org/text", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The textual content of this CreativeWork." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9480" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/text" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "text" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9482" + } ] +}, { + "@id" : "https://schema.org/textValue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Text value being annotated." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9486" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/textValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "textValue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9488" + } ] +}, { + "@id" : "https://schema.org/thumbnail", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Thumbnail image for an image or video." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9492" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/thumbnail" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "thumbnail" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9494" + } ] +}, { + "@id" : "https://schema.org/thumbnailUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A thumbnail image relevant to the Thing." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9499" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/thumbnailUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "thumbnailUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9501" + } ] +}, { + "@id" : "https://schema.org/tickerSymbol", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The exchange traded instrument associated with a Corporation object. The tickerSymbol is expressed as an exchange and an instrument name separated by a space character. For the exchange component of the tickerSymbol attribute, we recommend using the controlled vocabulary of Market Identifier Codes (MIC) specified in ISO 15022." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9505" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/tickerSymbol" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "tickerSymbol" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9507" + } ] +}, { + "@id" : "https://schema.org/ticketNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The unique identifier for the ticket." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9511" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ticketNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ticketNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9513" + } ] +}, { + "@id" : "https://schema.org/ticketToken", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Reference to an asset (e.g., Barcode, QR code image or PDF) usable for entrance." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9517" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ticketToken" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ticketToken" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9519" + } ] +}, { + "@id" : "https://schema.org/ticketedSeat", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The seat associated with the ticket." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9523" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/ticketedSeat" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "ticketedSeat" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9525" + } ] +}, { + "@id" : "https://schema.org/timeOfDay", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The time of day the program normally runs. For example, \"evenings\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9530" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/timeOfDay" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "timeOfDay" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9532" + } ] +}, { + "@id" : "https://schema.org/timeRequired", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Approximate or typical time it usually takes to work with or through the content of this work for the typical or target audience." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9536" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/timeRequired" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "timeRequired" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9538" + } ] +}, { + "@id" : "https://schema.org/timeToComplete", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The expected length of time to complete the program if attending full-time." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9543" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/timeToComplete" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "timeToComplete" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9545" + } ] +}, { + "@id" : "https://schema.org/tissueSample", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of tissue sample required for the test." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9550" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/tissueSample" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "tissueSample" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9552" + } ] +}, { + "@id" : "https://schema.org/title", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The title of the job." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9556" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/title" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "title" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9558" + } ] +}, { + "@id" : "https://schema.org/titleEIDR", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An EIDR (Entertainment Identifier Registry) identifier representing at the most general/abstract level, a work of film or television.

\n\nFor example, the motion picture known as \"Ghostbusters\" has a titleEIDR of \"10.5240/7EC7-228A-510A-053E-CBB8-J\". This title (or work) may have several variants, which EIDR calls \"edits\". See editEIDR.

\n\nSince schema.org types like Movie, TVEpisode, TVSeason, and TVSeries can be used for both works and their multiple expressions, it is possible to use titleEIDR alone (for a general description), or alongside editEIDR for a more edit-specific description." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9562" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/titleEIDR" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "titleEIDR" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9567" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/toLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of location. The final location of the object or the agent after the action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9571" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/toLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "toLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9576" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/location" + } ] +}, { + "@id" : "https://schema.org/toRecipient", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of recipient. The recipient who was directly sent the message." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9581" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/toRecipient" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "toRecipient" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9583" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/recipient" + } ] +}, { + "@id" : "https://schema.org/tocContinuation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A HyperTocEntry can have a tocContinuation indicated, which is another HyperTocEntry that would be the default next item to play or render." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9591" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/tocContinuation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "tocContinuation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9593" + } ] +}, { + "@id" : "https://schema.org/tocEntry", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates a HyperTocEntry in a HyperToc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9598" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/tocEntry" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "tocEntry" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9600" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/hasPart" + } ] +}, { + "@id" : "https://schema.org/tongueWeight", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The permitted vertical load (TWR) of a trailer attached to the vehicle. Also referred to as Tongue Load Rating (TLR) or Vertical Load Rating (VLR).

\n\nTypical unit code(s): KGM for kilogram, LBR for pound

\n\n\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9605" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/tongueWeight" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "tongueWeight" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9607" + } ] +}, { + "@id" : "https://schema.org/tool", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of instrument. An object used (but not consumed) when performing instructions or a direction." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9612" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/tool" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "tool" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9615" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/instrument" + } ] +}, { + "@id" : "https://schema.org/torque", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The torque (turning force) of the vehicle's engine.

\n\nTypical unit code(s): NU for newton metre (N m), F17 for pound-force per foot, or F48 for pound-force per inch

\n\n
    \n
  • Note 1: You can link to information about how the given value has been determined (e.g. reference RPM) using the valueReference property.
  • \n
  • Note 2: You can use minValue and maxValue to indicate ranges.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9620" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/torque" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "torque" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9622" + } ] +}, { + "@id" : "https://schema.org/totalHistoricalEnrollment", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The total number of students that have enrolled in the history of the course." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9627" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/totalHistoricalEnrollment" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "totalHistoricalEnrollment" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9629" + } ] +}, { + "@id" : "https://schema.org/totalJobOpenings", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of positions open for this job posting. Use a positive integer. Do not use if the number of positions is unclear or not known." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9631" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/totalJobOpenings" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "totalJobOpenings" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9633" + } ] +}, { + "@id" : "https://schema.org/totalPaymentDue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The total amount due." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9635" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/totalPaymentDue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "totalPaymentDue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9637" + } ] +}, { + "@id" : "https://schema.org/totalPrice", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The total price for the reservation or ticket, including applicable taxes, shipping, etc.

\n\nUsage guidelines:

\n\n
    \n
  • Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
  • \n
  • Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9643" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/totalPrice" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "totalPrice" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9646" + } ] +}, { + "@id" : "https://schema.org/totalTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The total time required to perform instructions or a direction (including time to prepare the supplies), in ISO 8601 duration format." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9652" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/totalTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "totalTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9655" + } ] +}, { + "@id" : "https://schema.org/tourBookingPage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A page providing information on how to book a tour of some Place, such as an Accommodation or ApartmentComplex in a real estate setting, as well as other kinds of tours as appropriate." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9660" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/tourBookingPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "tourBookingPage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9664" + } ] +}, { + "@id" : "https://schema.org/touristType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Attraction suitable for type(s) of tourist. E.g. children, visitors from a particular country, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9668" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/touristType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "touristType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9672" + } ] +}, { + "@id" : "https://schema.org/track", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A music recording (track)—usually a single song. If an ItemList is given, the list should contain items of type MusicRecording." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9677" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/track" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "track" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9680" + } ] +}, { + "@id" : "https://schema.org/trackingNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Shipper tracking number." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9686" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/trackingNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "trackingNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9688" + } ] +}, { + "@id" : "https://schema.org/trackingUrl", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Tracking url for the parcel delivery." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9692" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/trackingUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "trackingUrl" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9694" + } ] +}, { + "@id" : "https://schema.org/tracks", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A music recording (track)—usually a single song." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9698" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/tracks" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "tracks" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9701" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/track" + } ] +}, { + "@id" : "https://schema.org/trailer", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The trailer of a movie or TV/radio series, season, episode, etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9706" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/trailer" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "trailer" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9715" + } ] +}, { + "@id" : "https://schema.org/trailerWeight", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The permitted weight of a trailer attached to the vehicle.

\n\nTypical unit code(s): KGM for kilogram, LBR for pound\n* Note 1: You can indicate additional information in the name of the QuantitativeValue node.\n* Note 2: You may also link to a QualitativeValue node that provides additional information using valueReference.\n* Note 3: Note that you can use minValue and maxValue to indicate ranges." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9720" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/trailerWeight" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "trailerWeight" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9722" + } ] +}, { + "@id" : "https://schema.org/trainName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The name of the train (e.g. The Orient Express)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9727" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/trainName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "trainName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9729" + } ] +}, { + "@id" : "https://schema.org/trainNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The unique identifier for the train." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9733" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/trainNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "trainNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9735" + } ] +}, { + "@id" : "https://schema.org/trainingSalary", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The estimated salary earned while in the program." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9739" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/trainingSalary" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "trainingSalary" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9742" + } ] +}, { + "@id" : "https://schema.org/transFatContent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of grams of trans fat." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9747" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/transFatContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "transFatContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9749" + } ] +}, { + "@id" : "https://schema.org/transcript", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "If this MediaObject is an AudioObject or VideoObject, the transcript of that object." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9754" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/transcript" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "transcript" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9757" + } ] +}, { + "@id" : "https://schema.org/transitTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The typical delay the order has been sent for delivery and the goods reach the final customer. Typical properties: minValue, maxValue, unitCode (d for DAY)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9761" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/transitTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "transitTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9763" + } ] +}, { + "@id" : "https://schema.org/transitTimeLabel", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Label to match an OfferShippingDetails with a DeliveryTimeSettings (within the context of a shippingSettingsLink cross-reference)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9768" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/transitTimeLabel" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "transitTimeLabel" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9771" + } ] +}, { + "@id" : "https://schema.org/translationOfWork", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The work that this work has been translated from. E.g. 物种起源 is a translationOf “On the Origin of Species”." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9775" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/translationOfWork" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "translationOfWork" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9777" + } ], + "http://www.w3.org/2002/07/owl#inverseOf" : [ { + "@id" : "https://schema.org/workTranslation" + } ] +}, { + "@id" : "https://schema.org/translator", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Organization or person who adapts a creative work to different languages, regional differences and technical requirements of a target market, or that translates during some event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9782" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/translator" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "translator" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9785" + } ] +}, { + "@id" : "https://schema.org/transmissionMethod", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "How the disease spreads, either as a route or vector, for example 'direct contact', 'Aedes aegypti', etc." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9791" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/transmissionMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "transmissionMethod" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9793" + } ] +}, { + "@id" : "https://schema.org/travelBans", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Information about travel bans, e.g. in the context of a pandemic." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9797" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/travelBans" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "travelBans" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9799" + } ] +}, { + "@id" : "https://schema.org/trialDesign", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifics about the trial design (enumerated)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9804" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/trialDesign" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "trialDesign" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9806" + } ] +}, { + "@id" : "https://schema.org/tributary", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The anatomical or organ system that the vein flows into; a larger structure that the vein connects to." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9811" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/tributary" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "tributary" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9813" + } ] +}, { + "@id" : "https://schema.org/tripOrigin", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The location of origin of the trip, prior to any destination(s)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9818" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/tripOrigin" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "tripOrigin" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9820" + } ] +}, { + "@id" : "https://schema.org/typeOfBed", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of bed to which the BedDetail refers, i.e. the type of bed available in the quantity indicated by quantity." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9825" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/typeOfBed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "typeOfBed" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9827" + } ] +}, { + "@id" : "https://schema.org/typeOfGood", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The product that this structured value is referring to." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9832" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/typeOfGood" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "typeOfGood" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9835" + } ] +}, { + "@id" : "https://schema.org/typicalAgeRange", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The typical expected age range, e.g. '7-9', '11-'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9841" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/typicalAgeRange" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "typicalAgeRange" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9844" + } ] +}, { + "@id" : "https://schema.org/typicalCreditsPerTerm", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of credits or units a full-time student would be expected to take in 1 term however 'term' is defined by the institution." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9848" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/typicalCreditsPerTerm" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "typicalCreditsPerTerm" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9850" + } ] +}, { + "@id" : "https://schema.org/typicalTest", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A medical test typically performed given this condition." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9856" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/typicalTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "typicalTest" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9858" + } ] +}, { + "@id" : "https://schema.org/underName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The person or organization the reservation or ticket is for." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9863" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/underName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "underName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9866" + } ] +}, { + "@id" : "https://schema.org/unitCode", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The unit of measurement given using the UN/CEFACT Common Code (3 characters) or a URL. Other codes than the UN/CEFACT Common Code may be used with a prefix followed by a colon." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9872" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/unitCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "unitCode" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9877" + } ] +}, { + "@id" : "https://schema.org/unitText", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A string or text indicating the unit of measurement. Useful if you cannot provide a standard unit code for\nunitCode." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9881" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/unitText" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "unitText" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9886" + } ] +}, { + "@id" : "https://schema.org/unnamedSourcesPolicy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "For an Organization (typically a NewsMediaOrganization), a statement about policy on use of unnamed sources and the decision process required." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9890" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/unnamedSourcesPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "unnamedSourcesPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9893" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/publishingPrinciples" + } ] +}, { + "@id" : "https://schema.org/unsaturatedFatContent", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of grams of unsaturated fat." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9898" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/unsaturatedFatContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "unsaturatedFatContent" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9900" + } ] +}, { + "@id" : "https://schema.org/uploadDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Date (including time if available) when this media object was uploaded to this site." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9905" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/uploadDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "uploadDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9907" + } ] +}, { + "@id" : "https://schema.org/upvoteCount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of upvotes this question, answer or comment has received from the community." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9910" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/upvoteCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "upvoteCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9912" + } ] +}, { + "@id" : "https://schema.org/url", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "URL of the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9914" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/url" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "url" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9916" + } ] +}, { + "@id" : "https://schema.org/urlTemplate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An url template (RFC6570) that will be used to construct the target of the execution of the action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9920" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/urlTemplate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "urlTemplate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9922" + } ] +}, { + "@id" : "https://schema.org/usNPI", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A National Provider Identifier (NPI) \n is a unique 10-digit identification number issued to health care providers in the United States by the Centers for Medicare and Medicaid Services." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9926" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/usNPI" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "usNPI" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9928" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/identifier" + } ] +}, { + "@id" : "https://schema.org/usageInfo", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The schema.org usageInfo property indicates further information about a CreativeWork. This property is applicable both to works that are freely available and to those that require payment or other transactions. It can reference additional information, e.g. community expectations on preferred linking and citation conventions, as well as purchasing details. For something that can be commercially licensed, usageInfo can provide detailed, resource-specific information about licensing options.

\n\nThis property can be used alongside the license property which indicates license(s) applicable to some piece of content. The usageInfo property can provide information about other licensing options, e.g. acquiring commercial usage rights for an image that is also available under non-commercial creative commons licenses." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9932" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/usageInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "usageInfo" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9934" + } ] +}, { + "@id" : "https://schema.org/usedToDiagnose", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A condition the test is used to diagnose." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9939" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/usedToDiagnose" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "usedToDiagnose" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9941" + } ] +}, { + "@id" : "https://schema.org/userInteractionCount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of interactions for the CreativeWork using the WebSite or SoftwareApplication." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9946" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/userInteractionCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "userInteractionCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9948" + } ] +}, { + "@id" : "https://schema.org/usesDevice", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Device used to perform the test." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9950" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/usesDevice" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "usesDevice" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9952" + } ] +}, { + "@id" : "https://schema.org/usesHealthPlanIdStandard", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The standard for interpreting the Plan ID. The preferred is \"HIOS\". See the Centers for Medicare & Medicaid Services for more details." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9957" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/usesHealthPlanIdStandard" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "usesHealthPlanIdStandard" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9959" + } ] +}, { + "@id" : "https://schema.org/utterances", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Text of an utterances (spoken words, lyrics etc.) that occurs at a certain section of a media object, represented as a HyperTocEntry." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9963" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/utterances" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "utterances" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9965" + } ] +}, { + "@id" : "https://schema.org/validFor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The duration of validity of a permit or similar thing." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9969" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/validFor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "validFor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9972" + } ] +}, { + "@id" : "https://schema.org/validFrom", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date when the item becomes valid." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9977" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/validFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "validFrom" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9986" + } ] +}, { + "@id" : "https://schema.org/validIn", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The geographic area where the item is valid. Applies for example to a Permit, a Certification, or an EducationalOccupationalCredential." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9989" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/validIn" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "validIn" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid9993" + } ] +}, { + "@id" : "https://schema.org/validThrough", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid9998" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/validThrough" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "validThrough" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10006" + } ] +}, { + "@id" : "https://schema.org/validUntil", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The date when the item is no longer valid." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10009" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/validUntil" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "validUntil" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10011" + } ] +}, { + "@id" : "https://schema.org/value", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The value of a QuantitativeValue (including Observation) or property value node.

\n\n
    \n
  • For QuantitativeValue and MonetaryAmount, the recommended type for values is 'Number'.
  • \n
  • For PropertyValue, it can be 'Text', 'Number', 'Boolean', or 'StructuredValue'.
  • \n
  • Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
  • \n
  • Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
  • \n
\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10013" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/value" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "value" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10017" + } ] +}, { + "@id" : "https://schema.org/valueAddedTaxIncluded", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies whether the applicable value-added tax (VAT) is included in the price specification or not." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10024" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/valueAddedTaxIncluded" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "valueAddedTaxIncluded" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10026" + } ] +}, { + "@id" : "https://schema.org/valueMaxLength", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies the allowed range for number of characters in a literal value." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10028" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/valueMaxLength" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "valueMaxLength" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10030" + } ] +}, { + "@id" : "https://schema.org/valueMinLength", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies the minimum allowed range for number of characters in a literal value." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10032" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/valueMinLength" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "valueMinLength" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10034" + } ] +}, { + "@id" : "https://schema.org/valueName", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the name of the PropertyValueSpecification to be used in URL templates and form encoding in a manner analogous to HTML's input@name." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10036" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/valueName" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "valueName" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10038" + } ] +}, { + "@id" : "https://schema.org/valuePattern", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Specifies a regular expression for testing literal values according to the HTML spec." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10042" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/valuePattern" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "valuePattern" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10044" + } ] +}, { + "@id" : "https://schema.org/valueReference", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A secondary value that provides additional information on the original value, e.g. a reference temperature or a type of measurement." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10048" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/valueReference" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "valueReference" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10052" + } ] +}, { + "@id" : "https://schema.org/valueRequired", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Whether the property must be filled in to complete the action. Default is false." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10063" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/valueRequired" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "valueRequired" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10065" + } ] +}, { + "@id" : "https://schema.org/variableMeasured", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The variableMeasured property can indicate (repeated as necessary) the variables that are measured in some dataset, either described as text or as pairs of identifier and description using PropertyValue, or more explicitly as a StatisticalVariable." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10067" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/variableMeasured" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "variableMeasured" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10070" + } ] +}, { + "@id" : "https://schema.org/variablesMeasured", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Originally named variablesMeasured, the variableMeasured property can indicate (repeated as necessary) the variables that are measured in some dataset, either described as text or as pairs of identifier and description using PropertyValue." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10077" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://attic.schema.org/variablesMeasured" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "variablesMeasured" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10079" + } ] +}, { + "@id" : "https://schema.org/variantCover", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A description of the variant cover\n for the issue, if the issue is a variant printing. For example, \"Bryan Hitch\n Variant Cover\" or \"2nd Printing Variant\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10084" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/variantCover" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "variantCover" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10086" + } ] +}, { + "@id" : "https://schema.org/variesBy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates the property or properties by which the variants in a ProductGroup vary, e.g. their size, color etc. Schema.org properties can be referenced by their short name e.g. \"color\"; terms defined elsewhere can be referenced with their URIs." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10090" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/variesBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "variesBy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10092" + } ] +}, { + "@id" : "https://schema.org/vatID", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Value-added Tax ID of the organization or person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10097" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/vatID" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "vatID" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10100" + } ] +}, { + "@id" : "https://schema.org/vehicleConfiguration", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A short text indicating the configuration of the vehicle, e.g. '5dr hatchback ST 2.5 MT 225 hp' or 'limited edition'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10104" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/vehicleConfiguration" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "vehicleConfiguration" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10106" + } ] +}, { + "@id" : "https://schema.org/vehicleEngine", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Information about the engine or engines of the vehicle." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10110" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/vehicleEngine" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "vehicleEngine" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10112" + } ] +}, { + "@id" : "https://schema.org/vehicleIdentificationNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The Vehicle Identification Number (VIN) is a unique serial number used by the automotive industry to identify individual motor vehicles." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10117" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/vehicleIdentificationNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "vehicleIdentificationNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10119" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/serialNumber" + } ] +}, { + "@id" : "https://schema.org/vehicleInteriorColor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The color or color combination of the interior of the vehicle." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10123" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/vehicleInteriorColor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "vehicleInteriorColor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10125" + } ] +}, { + "@id" : "https://schema.org/vehicleInteriorType", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type or material of the interior of the vehicle (e.g. synthetic fabric, leather, wood, etc.). While most interior types are characterized by the material used, an interior type can also be based on vehicle usage or target audience." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10129" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/vehicleInteriorType" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "vehicleInteriorType" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10131" + } ] +}, { + "@id" : "https://schema.org/vehicleModelDate", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The release date of a vehicle model (often used to differentiate versions of the same make and model)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10135" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/vehicleModelDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "vehicleModelDate" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10137" + } ] +}, { + "@id" : "https://schema.org/vehicleSeatingCapacity", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of passengers that can be seated in the vehicle, both in terms of the physical space available, and in terms of limitations set by law.

\n\nTypical unit code(s): C62 for persons." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10139" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/vehicleSeatingCapacity" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "vehicleSeatingCapacity" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10141" + } ] +}, { + "@id" : "https://schema.org/vehicleSpecialUsage", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Indicates whether the vehicle has been used for special purposes, like commercial rental, driving school, or as a taxi. The legislation in many countries requires this information to be revealed when offering a car for sale." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10147" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/vehicleSpecialUsage" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "vehicleSpecialUsage" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10149" + } ] +}, { + "@id" : "https://schema.org/vehicleTransmission", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of component used for transmitting the power from a rotating power source to the wheels or other relevant component(s) (\"gearbox\" for cars)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10154" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/vehicleTransmission" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "vehicleTransmission" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10156" + } ] +}, { + "@id" : "https://schema.org/vendor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "'vendor' is an earlier term for 'seller'." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10161" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/vendor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "vendor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10163" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/participant" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/seller" + } ] +}, { + "@id" : "https://schema.org/verificationFactCheckingPolicy", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Disclosure about verification and fact-checking processes for a NewsMediaOrganization or other fact-checking Organization." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10169" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/verificationFactCheckingPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "verificationFactCheckingPolicy" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10171" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/publishingPrinciples" + } ] +}, { + "@id" : "https://schema.org/version", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The version of the CreativeWork embodied by a specified resource." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10176" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/version" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "version" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10178" + } ] +}, { + "@id" : "https://schema.org/video", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An embedded video object." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10183" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/video" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "video" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10185" + } ] +}, { + "@id" : "https://schema.org/videoFormat", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The type of screening or video broadcast used (e.g. IMAX, 3D, SD, HD, etc.)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10191" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/videoFormat" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "videoFormat" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10195" + } ] +}, { + "@id" : "https://schema.org/videoFrameSize", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The frame size of the video." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10199" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/videoFrameSize" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "videoFrameSize" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10201" + } ] +}, { + "@id" : "https://schema.org/videoQuality", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The quality of the video." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10205" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/videoQuality" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "videoQuality" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10207" + } ] +}, { + "@id" : "https://schema.org/volumeNumber", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Identifies the volume of publication or multi-part work; for example, \"iii\" or \"2\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10211" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/volumeNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "volumeNumber" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10213" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/position" + } ] +}, { + "@id" : "https://schema.org/warning", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Any FDA or other warnings about the drug (text or URL)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10218" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/warning" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "warning" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10220" + } ] +}, { + "@id" : "https://schema.org/warranty", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The warranty promise(s) included in the offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10224" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/warranty" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "warranty" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10227" + } ] +}, { + "@id" : "https://schema.org/warrantyPromise", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#NamedIndividual" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The warranty promise(s) included in the offer." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10232" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/warrantyPromise" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "warrantyPromise" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10235" + } ], + "https://schema.org/supersededBy" : [ { + "@id" : "https://schema.org/warranty" + } ] +}, { + "@id" : "https://schema.org/warrantyScope", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The scope of the warranty promise." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10240" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/warrantyScope" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "warrantyScope" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10242" + } ] +}, { + "@id" : "https://schema.org/webCheckinTime", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The time when a passenger can check into the flight online." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10247" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/webCheckinTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "webCheckinTime" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10249" + } ] +}, { + "@id" : "https://schema.org/webFeed", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The URL for a feed, e.g. associated with a podcast series, blog, or series of date-stamped updates. This is usually RSS or Atom." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10251" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/webFeed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "webFeed" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10254" + } ] +}, { + "@id" : "https://schema.org/weight", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The weight of the product or person." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10259" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/weight" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "weight" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10263" + } ] +}, { + "@id" : "https://schema.org/weightTotal", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The permitted total weight of the loaded vehicle, including passengers and cargo and the weight of the empty vehicle.

\n\nTypical unit code(s): KGM for kilogram, LBR for pound

\n\n\n" + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10268" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/weightTotal" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "weightTotal" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10270" + } ] +}, { + "@id" : "https://schema.org/wheelbase", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The distance between the centers of the front and rear wheels.

\n\nTypical unit code(s): CMT for centimeters, MTR for meters, INH for inches, FOT for foot/feet." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10275" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://auto.schema.org/wheelbase" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "wheelbase" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10277" + } ] +}, { + "@id" : "https://schema.org/width", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The width of the item." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10282" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/width" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "width" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10287" + } ] +}, { + "@id" : "https://schema.org/winner", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A sub property of participant. The winner of the action." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10293" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/winner" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "winner" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10295" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/participant" + } ] +}, { + "@id" : "https://schema.org/wordCount", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The number of words in the text of the Article." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10300" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/wordCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "wordCount" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10302" + } ] +}, { + "@id" : "https://schema.org/workExample", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Example/instance/realization/derivation of the concept of this creative work. E.g. the paperback edition, first edition, or e-book." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10304" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/workExample" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "workExample" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10306" + } ] +}, { + "@id" : "https://schema.org/workFeatured", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A work featured in some event, e.g. exhibited in an ExhibitionEvent.\n Specific subproperties are available for workPerformed (e.g. a play), or a workPresented (a Movie at a ScreeningEvent)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10311" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/workFeatured" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "workFeatured" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10313" + } ] +}, { + "@id" : "https://schema.org/workHours", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The typical working hours for this job (e.g. 1st shift, night shift, 8am-5pm)." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10318" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/workHours" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "workHours" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10320" + } ] +}, { + "@id" : "https://schema.org/workLocation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A contact location for a person's place of work." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10324" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/workLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "workLocation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10326" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/location" + } ] +}, { + "@id" : "https://schema.org/workPerformed", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A work performed in some event, for example a play performed in a TheaterEvent." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10332" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/workPerformed" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "workPerformed" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10334" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/workFeatured" + } ] +}, { + "@id" : "https://schema.org/workPresented", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The movie presented during this event." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10339" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/workPresented" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "workPresented" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10341" + } ], + "http://www.w3.org/2000/01/rdf-schema#subPropertyOf" : [ { + "@id" : "https://schema.org/workFeatured" + } ] +}, { + "@id" : "https://schema.org/workTranslation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "A work that is a translation of the content of this work. E.g. 西遊記 has an English workTranslation “Journey to the West”, a German workTranslation “Monkeys Pilgerfahrt” and a Vietnamese translation Tây du ký bình khảo." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10346" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://bib.schema.org/workTranslation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "workTranslation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10348" + } ] +}, { + "@id" : "https://schema.org/workload", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Quantitative measure of the physiologic output of the exercise; also referred to as energy expenditure." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10353" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://health-lifesci.schema.org/workload" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "workload" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10355" + } ] +}, { + "@id" : "https://schema.org/worksFor", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "Organizations that the person works for." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10361" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/worksFor" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "worksFor" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10363" + } ] +}, { + "@id" : "https://schema.org/worstRating", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The lowest value allowed in this rating system. If worstRating is omitted, 1 is assumed." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10368" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/worstRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "worstRating" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10370" + } ] +}, { + "@id" : "https://schema.org/xpath", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "An XPath, e.g. of a SpeakableSpecification or WebPageElement. In the latter case, multiple matches within a page can constitute a single conceptual \"Web page element\"." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10375" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/xpath" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "xpath" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10378" + } ] +}, { + "@id" : "https://schema.org/yearBuilt", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty", "http://www.w3.org/2002/07/owl#DatatypeProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The year an Accommodation was constructed. This corresponds to the YearBuilt field in RESO." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10383" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://pending.schema.org/yearBuilt" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "yearBuilt" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10385" + } ] +}, { + "@id" : "https://schema.org/yearlyRevenue", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The size of the business in annual revenue." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10387" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/yearlyRevenue" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "yearlyRevenue" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10389" + } ] +}, { + "@id" : "https://schema.org/yearsInOperation", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The age of the business." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10394" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/yearsInOperation" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "yearsInOperation" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10396" + } ] +}, { + "@id" : "https://schema.org/yield", + "@type" : [ "http://www.w3.org/2002/07/owl#ObjectProperty" ], + "http://www.w3.org/2000/01/rdf-schema#comment" : [ { + "@language" : "en", + "@value" : "The quantity that results by performing instructions. For example, a paper airplane, 10 personalized candles." + } ], + "http://www.w3.org/2000/01/rdf-schema#domain" : [ { + "@id" : "_:genid10401" + } ], + "http://www.w3.org/2000/01/rdf-schema#isDefinedBy" : [ { + "@id" : "https://schema.org/yield" + } ], + "http://www.w3.org/2000/01/rdf-schema#label" : [ { + "@language" : "en", + "@value" : "yield" + } ], + "http://www.w3.org/2000/01/rdf-schema#range" : [ { + "@id" : "_:genid10403" + } ] +} ] \ No newline at end of file diff --git a/tests/data/shacl-model/commons/shapes-1.json b/tests/data/shacl-model/commons/shapes-1.json index 354c0ebb6..21c59ef7c 100644 --- a/tests/data/shacl-model/commons/shapes-1.json +++ b/tests/data/shacl-model/commons/shapes-1.json @@ -2,7 +2,7 @@ "@context": { "this": "http://www.example.com/", "sh": "http://www.w3.org/ns/shacl#", - "schema": "http://schema.org/", + "schema": "https://schema.org/", "xsd": "http://www.w3.org/2001/XMLSchema#", "prov": "http://www.w3.org/ns/prov#", "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", @@ -12,6 +12,7 @@ "@id": "sh:node", "@type": "@id" }, + "owl": "http://www.w3.org/2002/07/owl#", "and": { "@id": "sh:and", "@type": "@id", @@ -87,6 +88,7 @@ }, "@id": "http://shapes.ex/person", "@type": "nxv:Schema", + "owl:imports": "https://schema.org/", "shapes": [ { "@id": "schema:PostalAddress", diff --git a/tests/data/shacl-model/commons/shapes-2.json b/tests/data/shacl-model/commons/shapes-2.json index c2128b88c..f2a94d8f4 100644 --- a/tests/data/shacl-model/commons/shapes-2.json +++ b/tests/data/shacl-model/commons/shapes-2.json @@ -2,7 +2,7 @@ "@context": { "this": "http://www.example.com/", "sh": "http://www.w3.org/ns/shacl#", - "schema": "http://schema.org/", + "schema": "https://schema.org/", "xsd": "http://www.w3.org/2001/XMLSchema#", "prov": "http://www.w3.org/ns/prov#", "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", diff --git a/tests/data/shacl-model/commons/shapes-3.json b/tests/data/shacl-model/commons/shapes-3.json index 31feb1334..2889e2c32 100644 --- a/tests/data/shacl-model/commons/shapes-3.json +++ b/tests/data/shacl-model/commons/shapes-3.json @@ -2,7 +2,7 @@ "@context": { "this": "http://www.example.com/", "sh": "http://www.w3.org/ns/shacl#", - "schema": "http://schema.org/", + "schema": "https://schema.org/", "xsd": "http://www.w3.org/2001/XMLSchema#", "prov": "http://www.w3.org/ns/prov#", "nxv": "https://bluebrain.github.io/nexus/vocabulary/", diff --git a/tests/data/shacl-model/commons/shapes-4.json b/tests/data/shacl-model/commons/shapes-4.json index 41aec18c3..32c03469f 100644 --- a/tests/data/shacl-model/commons/shapes-4.json +++ b/tests/data/shacl-model/commons/shapes-4.json @@ -2,7 +2,7 @@ "@context": { "this": "http://www.example.com/", "sh": "http://www.w3.org/ns/shacl#", - "schema": "http://schema.org/", + "schema": "https://schema.org/", "xsd": "http://www.w3.org/2001/XMLSchema#", "prov": "http://www.w3.org/ns/prov#", "owl": "http://www.w3.org/2002/07/owl#", diff --git a/tests/data/shacl-model/context.json b/tests/data/shacl-model/context.json index 9f2397d8d..3da345b6f 100644 --- a/tests/data/shacl-model/context.json +++ b/tests/data/shacl-model/context.json @@ -4,6 +4,9 @@ "Activity": { "@id": "prov:Activity" }, + "Patient": { + "@id": "schema:Patient" + }, "Agent": { "@id": "prov:Agent" }, @@ -20,7 +23,7 @@ "@id": "nsg:BrainRegion" }, "Building": { - "@id": "http://schema.org/Building" + "@id": "schema:Building" }, "Employee": { "@id": "http://www.example.com/Employee" @@ -82,7 +85,7 @@ "@id": "schema:givenName" }, "image": { - "@id": "http://schema.org/image", + "@id": "schema:image", "@type": "@id" }, "isDefinedBy": { @@ -110,7 +113,7 @@ "prov": "http://www.w3.org/ns/prov#", "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "rdfs": "http://www.w3.org/2000/01/rdf-schema#", - "schema": "http://schema.org/", + "schema": "https://schema.org/", "skos": "http://www.w3.org/2004/02/skos/core#", "startDate": { "@id": "schema:startDate", diff --git a/tests/specializations/models/data.py b/tests/specializations/models/data.py index 07e136af1..30d3274aa 100644 --- a/tests/specializations/models/data.py +++ b/tests/specializations/models/data.py @@ -122,68 +122,98 @@ if k in ["id", "type", "description", "name"] } + +def _build_type_to_shapemap_item( + shape, + schema, + named_graph, + imports, + indirect_imports, + parent_node_shapes, + number_of_direct_property_shapes, + number_of_inherited_property_shapes, +): + return { + "shape": shape, + "schema": schema, + "named_graph": named_graph, + "imports": imports, + "indirect_imports": indirect_imports, + "parent_node_shapes": parent_node_shapes, + "number_of_direct_property_shapes": number_of_direct_property_shapes, + "number_of_inherited_property_shapes": number_of_inherited_property_shapes, + } + + TYPES_SHAPES_MAP = { - "Activity": { - "shape": "http://www.example.com/ActivityShape", - "schema": "http://shapes.ex/activity", - "named_graph": f"{shacl_schemas_file_path}/shapes-2.json", - "imports": [], - "parent_node_shapes": [], - "number_of_direct_property_shapes": 9, - "number_of_inherited_property_shapes": 0, - }, - "Association": { - "shape": "http://www.example.com/AssociationShape", - "schema": "http://shapes.ex/person", - "named_graph": f"{shacl_schemas_file_path}/shapes-1.json", - "imports": [], - "parent_node_shapes": [], - "number_of_direct_property_shapes": 1, - "number_of_inherited_property_shapes": 0, - }, - "Building": { - "shape": "http://www.example.com/BuildingShape", - "schema": "http://shapes.ex/building", - "named_graph": f"{shacl_schemas_file_path}/shapes-3.json", - "imports": [], - "parent_node_shapes": [], - "number_of_direct_property_shapes": 4, - "number_of_inherited_property_shapes": 0, - }, - "Employee": { - "shape": "http://www.example.com/EmployeeShape", - "schema": "http://shapes.ex/employee", - "named_graph": f"{shacl_schemas_file_path}/shapes-4.json", - "imports": ["http://shapes.ex/person"], - "parent_node_shapes": [URIRef("http://www.example.com/PersonShape")], - "number_of_direct_property_shapes": 0, - "number_of_inherited_property_shapes": 6, - }, - "Organization": { - "shape": "http://www.example.com/OrganizationShape", - "schema": "http://shapes.ex/person", - "named_graph": f"{shacl_schemas_file_path}/shapes-1.json", - "imports": [], - "parent_node_shapes": [], - "number_of_direct_property_shapes": 2, - "number_of_inherited_property_shapes": 0, - }, - "Person": { - "shape": "http://www.example.com/PersonShape", - "schema": "http://shapes.ex/person", - "named_graph": f"{shacl_schemas_file_path}/shapes-1.json", - "imports": [], - "parent_node_shapes": [], - "number_of_direct_property_shapes": 6, - "number_of_inherited_property_shapes": 0, - }, - "PostalAddress": { - "shape": "http://schema.org/PostalAddress", - "schema": "http://shapes.ex/person", - "named_graph": f"{shacl_schemas_file_path}/shapes-1.json", - "imports": [], - "parent_node_shapes": [], - "number_of_direct_property_shapes": 2, - "number_of_inherited_property_shapes": 0, - }, + "Activity": _build_type_to_shapemap_item( + "http://www.example.com/ActivityShape", + "http://shapes.ex/activity", + f"{shacl_schemas_file_path}/shapes-2.json", + {"schema": [], "ontology": []}, + {"schema": [], "ontology": []}, + [], + 9, + 0, + ), + "Association": _build_type_to_shapemap_item( + "http://www.example.com/AssociationShape", + "http://shapes.ex/person", + f"{shacl_schemas_file_path}/shapes-1.json", + {"schema": [], "ontology": ["https://schema.org/"]}, + {"schema": [], "ontology": []}, + [], + 1, + 0, + ), + "Building": _build_type_to_shapemap_item( + "http://www.example.com/BuildingShape", + "http://shapes.ex/building", + f"{shacl_schemas_file_path}/shapes-3.json", + {"schema": [], "ontology": []}, + {"schema": [], "ontology": []}, + [], + 4, + 0, + ), + "Employee": _build_type_to_shapemap_item( + "http://www.example.com/EmployeeShape", + "http://shapes.ex/employee", + f"{shacl_schemas_file_path}/shapes-4.json", + {"schema": ["http://shapes.ex/person"], "ontology": []}, + {"schema": [], "ontology": ["https://schema.org/"]}, + [URIRef("http://www.example.com/PersonShape")], + 0, + 6, + ), + "Organization": _build_type_to_shapemap_item( + "http://www.example.com/OrganizationShape", + "http://shapes.ex/person", + f"{shacl_schemas_file_path}/shapes-1.json", + {"schema": [], "ontology": ["https://schema.org/"]}, + {"schema": [], "ontology": []}, + [], + 2, + 0, + ), + "PostalAddress": _build_type_to_shapemap_item( + "https://schema.org/PostalAddress", + "http://shapes.ex/person", + f"{shacl_schemas_file_path}/shapes-1.json", + {"schema": [], "ontology": ["https://schema.org/"]}, + {"schema": [], "ontology": []}, + [], + 2, + 0, + ), + "Person": _build_type_to_shapemap_item( + "http://www.example.com/PersonShape", + "http://shapes.ex/person", + f"{shacl_schemas_file_path}/shapes-1.json", + {"schema": [], "ontology": ["https://schema.org/"]}, + {"schema": [], "ontology": []}, + [], + 6, + 0, + ), } diff --git a/tests/specializations/models/test_demo_model.py b/tests/specializations/models/test_demo_model.py index 53c7f4e92..787c8b9ab 100644 --- a/tests/specializations/models/test_demo_model.py +++ b/tests/specializations/models/test_demo_model.py @@ -1,14 +1,14 @@ -# +# # Blue Brain Nexus Forge is free software: you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. -# +# # Blue Brain Nexus Forge is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser # General Public License for more details. -# +# # You should have received a copy of the GNU Lesser General Public License # along with Blue Brain Nexus Forge. If not, see . @@ -17,6 +17,7 @@ from kgforge.specializations.models.demo_model import DemoModel from utils import full_path_relative_to_root from tests.conftest import check_report + # TODO To be port to the generic parameterizable test suite for models in test_models.py. DKE-135. @@ -25,7 +26,9 @@ @given("A model instance.") def model(): - return DemoModel(full_path_relative_to_root("tests/data/demo-model/"), origin="directory") + return DemoModel( + full_path_relative_to_root("tests/data/demo-model/"), origin="directory" + ) @given("A validated resource.", target_fixture="data") @@ -35,17 +38,31 @@ def validated_resource(model, valid_resource): return valid_resource -@when(parsers.re("I validate the resource(?Ps?)." - " The printed report does(?P not)? mention an error(: '(?P[a-zA-Z0-9: ]+)')?.")) +@when( + parsers.re( + "I validate the resource(?Ps?)." + " The printed report does(?P not)? mention an error(: '(?P[a-zA-Z0-9: ]+)')?." + ) +) def validate(capsys, model, data, rc, err, msg): model.validate(data, execute_actions_before=False, type_="Person") check_report(capsys, rc, err, msg, "_validate_one") -@when("I validate the resource. An exception is raised. The printed report mentions an error: 'Exception: exception raised'.") +@when( + "I validate the resource. An exception is raised. The printed report mentions an error: 'Exception: exception raised'." +) def validate_exception(monkeypatch, capsys, model, data): - def _validate_one(_, x, type_: str): raise Exception("exception raised") - monkeypatch.setattr("kgforge.specializations.models.demo_model.DemoModel._validate_one", _validate_one) + def _validate_one(_, x, type_: str, inference: str): + raise Exception("exception raised") + + monkeypatch.setattr( + "kgforge.specializations.models.demo_model.DemoModel._validate_one", + _validate_one, + ) model.validate(data, execute_actions_before=False, type_="Person") out = capsys.readouterr().out[:-1] - assert out == f" _validate_one\n False\n Exception: exception raised" + assert ( + out + == f" _validate_one\n False\n Exception: exception raised" + ) diff --git a/tests/specializations/models/test_rdf_directory_service.py b/tests/specializations/models/test_rdf_directory_service.py index b93aa2055..c83eb379f 100644 --- a/tests/specializations/models/test_rdf_directory_service.py +++ b/tests/specializations/models/test_rdf_directory_service.py @@ -14,7 +14,9 @@ import os from pathlib import Path import pytest -import rdflib +from rdflib import Dataset as RDFDataset +from rdflib import Graph +from rdflib.term import URIRef from kgforge.specializations.models import RdfModel from kgforge.specializations.models.rdf.directory_service import ( _load_rdf_files_as_graph, @@ -24,9 +26,9 @@ def test_load_rdf_files_as_graph(shacl_schemas_file_path): graph_dataset = _load_rdf_files_as_graph(Path(shacl_schemas_file_path)) - assert isinstance(graph_dataset, rdflib.Dataset) + assert isinstance(graph_dataset, RDFDataset) shape_graphs = [str(g.identifier) for g in graph_dataset.graphs()] - assert len(shape_graphs) == 5 + assert len(shape_graphs) == 6 expected_file_paths = [ str(f.resolve()) for f in Path(shacl_schemas_file_path).rglob(os.path.join("*.*")) @@ -35,7 +37,7 @@ def test_load_rdf_files_as_graph(shacl_schemas_file_path): assert sorted(shape_graphs) == sorted(expected_named_graphs) for file_path in expected_file_paths: g = graph_dataset.graph(file_path) - expected_g = rdflib.Graph().parse(file_path, format="json-ld") + expected_g = Graph().parse(file_path, format="json-ld") assert len(g) > 0 assert len(g) == len(expected_g) @@ -53,19 +55,28 @@ def test_build_shapes_map(rdf_model_from_dir: RdfModel): geo_shape_uri = ( "http://www.example.com/GeoShape" # The only shape not targeting a class ) - assert sorted( - list(class_to_shape.values()) + [rdflib.URIRef(geo_shape_uri)] - ) == sorted(list(shape_to_defining_resource.keys())) + assert sorted(list(class_to_shape.values()) + [URIRef(geo_shape_uri)]) == sorted( + list(shape_to_defining_resource.keys()) + ) assert sorted(set(shape_to_defining_resource.values())) == sorted( set(defining_resource_to_named_graph.keys()) ) - expected_targeted_classes = list(TYPES_SHAPES_MAP.keys()) - loaded_classes = [ + expected_targeted_classes = set(TYPES_SHAPES_MAP.keys()) + loaded_classes = { rdf_model_from_dir.service.context.to_symbol(cls) for cls in class_to_shape.keys() - ] + } assert sorted(loaded_classes) == sorted(expected_targeted_classes) expected_shapes = [val["shape"] for val in TYPES_SHAPES_MAP.values()] expected_shapes.append(geo_shape_uri) loaded_shapes = [str(s) for s in shape_to_defining_resource.keys()] assert sorted(loaded_shapes) == sorted(expected_shapes) + + +def test_build_ontology_map(rdf_model_from_dir: RdfModel): + ont_to_named_graph = rdf_model_from_dir.service._build_ontology_map() + assert isinstance(ont_to_named_graph, dict) + f = Path("tests/data/shacl-model/commons/schemaorg-v26.0.json") + assert ont_to_named_graph == { + URIRef("https://schema.org/"): URIRef(str(f.resolve())) + } diff --git a/tests/specializations/models/test_rdf_model.py b/tests/specializations/models/test_rdf_model.py index 1de6d97bc..be66ab841 100644 --- a/tests/specializations/models/test_rdf_model.py +++ b/tests/specializations/models/test_rdf_model.py @@ -14,6 +14,7 @@ import json import pytest +from rdflib import RDFS from kgforge.core.resource import Resource from kgforge.core.commons.exceptions import ValidationError @@ -30,7 +31,7 @@ def test_generate_context(self, rdf_model_from_dir: RdfModel): def test_types(self, rdf_model_from_dir: RdfModel): types = rdf_model_from_dir.types(pretty=False) - assert types == list(TYPES_SHAPES_MAP.keys()) + assert sorted(types) == sorted(list(TYPES_SHAPES_MAP.keys())) def test_context(self, rdf_model_from_dir: RdfModel, context_file_path): with open(context_file_path) as f: @@ -95,25 +96,66 @@ def valid_activity_resource(self, activity_json): resource.id = "http://testing/123" return resource + @pytest.fixture + def valid_patient_resource(self, activity_json): + resource = Resource( + type="Patient", + familyName="Doe", + givenName="John", + gender="male", + birthDate="2004-04-12T13:20:15.5", + ) + resource.id = "https://testing/1234" + return resource + @pytest.mark.parametrize("type_,", TYPES_SHAPES_MAP.keys()) def test_type_to_schema(self, rdf_model_from_dir: RdfModel, type_): assert rdf_model_from_dir.schema_id(type_) == TYPES_SHAPES_MAP[type_]["schema"] def test_validate_one(self, rdf_model_from_dir: RdfModel, valid_activity_resource): - rdf_model_from_dir.validate(valid_activity_resource, False, type_="Activity") + rdf_model_from_dir.validate( + valid_activity_resource, False, type_="Activity", inference=None + ) + assert valid_activity_resource._last_action.succeeded == True + assert valid_activity_resource._validated == True def test_validate_one_fail( self, rdf_model_from_dir: RdfModel, invalid_activity_resource ): with pytest.raises(ValidationError): rdf_model_from_dir._validate_one( - invalid_activity_resource, type_="Activity" + invalid_activity_resource, type_="Activity", inference=None ) - def test_validate_with_schema( - self, rdf_model_from_dir: RdfModel, valid_activity_resource + @pytest.mark.parametrize( + "inference, type, succeeded, validated", + [ + pytest.param("rdfs", "Person", True, True, id="rdfs_person"), + pytest.param("none", "Person", False, False, id="none_str_person"), + pytest.param(None, "Person", False, False, id="none_person"), + ], + ) + def test_validate_with_ontology( + self, + rdf_model_from_dir: RdfModel, + valid_patient_resource, + inference, + type, + succeeded, + validated, ): - rdf_model_from_dir.validate(valid_activity_resource, False, type_="Activity") + assert len(rdf_model_from_dir.service._imported) == 0 + assert valid_patient_resource.get_type() == "Patient" + assert ( + URIRef("https://schema.org/Patient"), + RDFS.subClassOf, + URIRef(f"https://schema.org/{type}"), + ) in rdf_model_from_dir.service._dataset_graph + rdf_model_from_dir.validate( + valid_patient_resource, False, type_=type, inference=inference + ) + assert valid_patient_resource._last_action.succeeded == succeeded + assert valid_patient_resource._validated == validated def test_validate_many( self, diff --git a/tests/specializations/models/test_rdf_service.py b/tests/specializations/models/test_rdf_service.py index acdb9c7b9..8aff0bb51 100644 --- a/tests/specializations/models/test_rdf_service.py +++ b/tests/specializations/models/test_rdf_service.py @@ -13,9 +13,10 @@ # along with Blue Brain Nexus Forge. If not, see . +import itertools from pyshacl import Shape import pytest -from rdflib import SH, Graph, URIRef +from rdflib import OWL, RDF, SH, Graph, URIRef from kgforge.specializations.models.rdf.directory_service import DirectoryService from kgforge.specializations.models.rdf_model import RdfModel from tests.specializations.models.data import TYPES_SHAPES_MAP @@ -24,24 +25,25 @@ def test_get_shape_graph(rdf_model_from_dir: RdfModel): assert isinstance(rdf_model_from_dir.service, DirectoryService) for s in TYPES_SHAPES_MAP.values(): - shape, schema_graph = rdf_model_from_dir.service.get_shape_graph( + shape, schema_graph, ont_graph = rdf_model_from_dir.service.get_shape_graph( URIRef(s["shape"]) ) assert isinstance(shape, Shape) assert str(shape.node) == s["shape"] assert isinstance(schema_graph, Graph) + assert isinstance(ont_graph, Graph) assert shape.node == URIRef(s["shape"]) assert (shape.node, None, None) in schema_graph assert len(schema_graph) > 0 - for imported in s["imports"]: + for imported in s["imports"]["schema"]: imported_named_graph_uriref = ( rdf_model_from_dir.service.defining_resource_to_named_graph[ URIRef(imported) ] ) imported_named_graph = ( - rdf_model_from_dir.service.load_shape_graph_from_source( + rdf_model_from_dir.service.load_resource_graph_from_source( graph_id=imported_named_graph_uriref, schema_id=imported ) ) @@ -55,12 +57,23 @@ def test_get_shape_graph(rdf_model_from_dir: RdfModel): ) for sh_property in imported_sh_properties: assert (URIRef(s["shape"]), SH.property, sh_property) in schema_graph + if s["imports"]["ontology"] or s["indirect_imports"]["ontology"]: + assert len(ont_graph) == 34872 + else: + assert len(ont_graph) == 0 + + all_imported_ontologies = ( + s["imports"]["ontology"] + s["indirect_imports"]["ontology"] + ) + for imported_ont in all_imported_ontologies: + assert (URIRef(imported_ont), None, None) not in schema_graph + assert (URIRef(imported_ont), RDF.type, OWL.Ontology) in ont_graph def test_get_nodeshape_parent_propertyshape(rdf_model_from_dir): assert len(rdf_model_from_dir.service._imported) == 0 for s in TYPES_SHAPES_MAP.values(): - schema_graph = rdf_model_from_dir.service._transitive_load_shape_graph( + schema_graph, _ = rdf_model_from_dir.service._transitive_load_resource_graph( rdf_model_from_dir.service._get_named_graph_from_shape(URIRef(s["shape"])), rdf_model_from_dir.service.shape_to_defining_resource[URIRef(s["shape"])], ) @@ -97,24 +110,54 @@ def test_get_nodeshape_parent_propertyshape(rdf_model_from_dir): def test_import_transitive_closure(rdf_model_from_dir: RdfModel): assert len(rdf_model_from_dir.service._imported) == 0 + expected_schema_imports = [] + expected_ontology_imports = [] for s in TYPES_SHAPES_MAP.values(): - _, _ = rdf_model_from_dir.service.get_shape_graph(URIRef(s["shape"])) + _, _, _ = rdf_model_from_dir.service.get_shape_graph(URIRef(s["shape"])) assert URIRef(s["schema"]) in rdf_model_from_dir.service._imported - s_imports = [URIRef(imp) for imp in s["imports"]] + s_schema_imports = [URIRef(imp) for imp in s["imports"]["schema"]] + s_ontology_imports = [URIRef(imp) for imp in s["imports"]["ontology"]] + s_ontology_indirect_imports = [ + URIRef(imp) for imp in s["indirect_imports"]["ontology"] + ] + all_s_ontology_imports = s_ontology_imports + s_ontology_indirect_imports + if all_s_ontology_imports: + assert ( + URIRef(s["schema"]) + in rdf_model_from_dir.service._defining_resource_to_imported_ontology + ) + assert sorted(all_s_ontology_imports) == sorted( + rdf_model_from_dir.service._defining_resource_to_imported_ontology[ + URIRef(s["schema"]) + ] + ) + s_imports = s_schema_imports + all_s_ontology_imports if s_imports: assert set(s_imports).issubset(rdf_model_from_dir.service._imported) - shapes = [val["schema"] for val in TYPES_SHAPES_MAP.values()] - expected_imports = [ - imp for val in TYPES_SHAPES_MAP.values() for imp in val["imports"] - ] + expected_schema_imports.extend(s_schema_imports) + expected_ontology_imports.extend(all_s_ontology_imports) + + expected_schema = [URIRef(val["schema"]) for val in TYPES_SHAPES_MAP.values()] assert len(rdf_model_from_dir.service._imported) == len( - set(shapes + expected_imports) + set(expected_schema + expected_schema_imports + expected_ontology_imports) + ) + assert sorted( + list(rdf_model_from_dir.service._defining_resource_to_imported_ontology.keys()) + ) == sorted( + [URIRef("http://shapes.ex/employee"), URIRef("http://shapes.ex/person")] ) + assert len( + set( + itertools.chain.from_iterable( + rdf_model_from_dir.service._defining_resource_to_imported_ontology.values() + ) + ) + ) == len(set(expected_ontology_imports)) def test_get_unknown_shape_graph_exception(rdf_model_from_dir: RdfModel): - with pytest.raises(Exception): - shape, schema_graph = rdf_model_from_dir.service.get_shape_graph( + with pytest.raises(ValueError): + shape, schema_graph, ont_graph = rdf_model_from_dir.service.get_shape_graph( URIRef("https://noshape") ) From f12b4654a9543c833df3f67db77ac0565acdbc6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mohameth=20Fran=C3=A7ois=20SY?= Date: Thu, 25 Apr 2024 09:23:06 +0200 Subject: [PATCH 26/49] Increased request timeout constant (#400) --- kgforge/core/commons/constants.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kgforge/core/commons/constants.py b/kgforge/core/commons/constants.py index 15f13f9b6..30cb500a0 100644 --- a/kgforge/core/commons/constants.py +++ b/kgforge/core/commons/constants.py @@ -1 +1,2 @@ -DEFAULT_REQUEST_TIMEOUT = 60 +# To be externaliised in the forge config +DEFAULT_REQUEST_TIMEOUT = 300 From 7342b583338b4ba57a23a976cec82002725c425c Mon Sep 17 00:00:00 2001 From: Sarah Date: Thu, 25 Apr 2024 11:21:12 +0200 Subject: [PATCH 27/49] Propagated inference value to model when using forge.validate (#399) --- kgforge/core/forge.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kgforge/core/forge.py b/kgforge/core/forge.py index 02d8cfdf9..913a9aba4 100644 --- a/kgforge/core/forge.py +++ b/kgforge/core/forge.py @@ -344,7 +344,7 @@ def validate( RDFS entailment rules (https://www.w3.org/TR/rdf-mt/). In this example 'owlrl' or 'rdfsowlrl' are also possible values while no inference will be performed with None . :return: None """ - self._model.validate(data, execute_actions_before, type_=type_) + self._model.validate(data, execute_actions_before, type_=type_, inference=inference) # Resolving User Interface. From f31e6ccf13f93bac89db45d882ad705a244154d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mohameth=20Fran=C3=A7ois=20SY?= Date: Thu, 25 Apr 2024 13:56:20 +0200 Subject: [PATCH 28/49] Expand jsonld context in load_resource_graph_from_source (#401) --- kgforge/specializations/models/rdf/store_service.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kgforge/specializations/models/rdf/store_service.py b/kgforge/specializations/models/rdf/store_service.py index 710763cad..a9900f502 100644 --- a/kgforge/specializations/models/rdf/store_service.py +++ b/kgforge/specializations/models/rdf/store_service.py @@ -170,7 +170,7 @@ def load_resource_graph_from_source(self, graph_id: str, schema_id: str) -> Grap raise ValueError(f"Failed to retrieve {schema_id}: {str(e)}") from e json_dict = as_jsonld( schema_resource, - form="compacted", + form="expanded", store_metadata=False, model_context=None, metadata_context=None, From 8106ed8b23e67eac95fe10439ef46f7fa191213c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mohameth=20Fran=C3=A7ois=20SY?= Date: Fri, 3 May 2024 16:45:23 +0200 Subject: [PATCH 29/49] Added AttributeError exception when a None resolver is provided to recursive_resolve when resolving a str jsonld context (#402) --- kgforge/core/conversions/rdf.py | 163 ++++++++++++++++++-------------- 1 file changed, 93 insertions(+), 70 deletions(-) diff --git a/kgforge/core/conversions/rdf.py b/kgforge/core/conversions/rdf.py index 98dbe8e86..5982b1209 100644 --- a/kgforge/core/conversions/rdf.py +++ b/kgforge/core/conversions/rdf.py @@ -41,11 +41,11 @@ class Form(Enum): def as_graph( - data: Union[Resource, List[Resource]], - store_metadata: bool, - model_context: Optional[Context], - metadata_context: Optional[Context], - context_resolver: Optional[Callable], + data: Union[Resource, List[Resource]], + store_metadata: bool, + model_context: Optional[Context], + metadata_context: Optional[Context], + context_resolver: Optional[Callable], ) -> Graph: return dispatch( data, @@ -59,19 +59,21 @@ def as_graph( def as_jsonld( - data: Union[Resource, List[Resource]], - form: str, - store_metadata: bool, - model_context: Optional[Context], - metadata_context: Optional[Context], - context_resolver: Optional[Callable], - **params + data: Union[Resource, List[Resource]], + form: str, + store_metadata: bool, + model_context: Optional[Context], + metadata_context: Optional[Context], + context_resolver: Optional[Callable], + **params, ) -> Union[Dict, List[Dict]]: try: valid_form = Form(form.lower()) except ValueError as e: supported_forms = tuple(item.value for item in Form) - raise NotSupportedError(f"supported serialization forms are {supported_forms}") from e + raise NotSupportedError( + f"supported serialization forms are {supported_forms}" + ) from e return dispatch( data, @@ -82,7 +84,7 @@ def as_jsonld( model_context, metadata_context, context_resolver, - **params + **params, ) @@ -96,10 +98,10 @@ def from_jsonld(data: Union[Dict, List[Dict]]) -> Union[Resource, List[Resource] def from_graph( - data: Graph, - type_: Optional[Union[str, List]] = None, - frame: Dict = None, - model_context: Optional[Context] = None, + data: Graph, + type_: Optional[Union[str, List]] = None, + frame: Dict = None, + model_context: Optional[Context] = None, ) -> Union[Resource, List[Resource]]: if not type_: @@ -172,13 +174,13 @@ def _from_jsonld_one(data: Dict) -> Resource: def _as_jsonld_many( - resources: List[Resource], - form: Form, - store_metadata: bool, - model_context: Optional[Context], - metadata_context: Optional[Context], - context_resolver: Optional[Callable], - **params + resources: List[Resource], + form: Form, + store_metadata: bool, + model_context: Optional[Context], + metadata_context: Optional[Context], + context_resolver: Optional[Callable], + **params, ) -> List[Dict]: return [ _as_jsonld_one( @@ -188,20 +190,20 @@ def _as_jsonld_many( model_context, metadata_context, context_resolver, - **params + **params, ) for i, resource in enumerate(resources) ] def _as_jsonld_one( - resource: Resource, - form: Form, - store_metadata: bool, - model_context: Optional[Context], - metadata_context: Optional[Context], - context_resolver: Optional[Callable], - **params + resource: Resource, + form: Form, + store_metadata: bool, + model_context: Optional[Context], + metadata_context: Optional[Context], + context_resolver: Optional[Callable], + **params, ) -> Dict: context = _resource_context(resource, model_context, context_resolver) resolved_context = deepcopy(context.document) @@ -253,9 +255,16 @@ def _as_jsonld_one( if isinstance(result, dict): if "@context" in result: result.pop("@context") - result = {**{"@context": output_context}, **result} if form is Form.COMPACTED else result - resource_id = resource.id if hasattr(resource, "id") else ( - getattr(resource, "@id") if hasattr(resource, "@id") else None) + result = ( + {**{"@context": output_context}, **result} + if form is Form.COMPACTED + else result + ) + resource_id = ( + resource.id + if hasattr(resource, "id") + else (getattr(resource, "@id") if hasattr(resource, "@id") else None) + ) if resource_id: result["@id"] = resource_id else: @@ -264,11 +273,11 @@ def _as_jsonld_one( def _as_graph_many( - resources: List[Resource], - store_metadata: bool, - model_context: Optional[Context], - metadata_context: Optional[Context], - context_resolver: Optional[Callable], + resources: List[Resource], + store_metadata: bool, + model_context: Optional[Context], + metadata_context: Optional[Context], + context_resolver: Optional[Callable], ) -> Graph: graph = Graph() for resource in resources: @@ -279,18 +288,18 @@ def _as_graph_many( store_metadata, model_context, metadata_context, - context_resolver + context_resolver, ) graph.parse(data=json.dumps(json_ld), format="json-ld") return graph def _as_graph_one( - resource: Resource, - store_metadata: bool, - model_context: Optional[Context], - metadata_context: Optional[Context], - context_resolver: Optional[Callable], + resource: Resource, + store_metadata: bool, + model_context: Optional[Context], + metadata_context: Optional[Context], + context_resolver: Optional[Callable], ) -> Graph: json_ld = _as_jsonld_one( resource, @@ -298,16 +307,16 @@ def _as_graph_one( store_metadata, model_context, metadata_context, - context_resolver + context_resolver, ) return Graph().parse(data=json.dumps(json_ld), format="json-ld") def _as_graphs( - resource: Resource, - store_metadata: bool, - context: Context, - metadata_context: Context, + resource: Resource, + store_metadata: bool, + context: Context, + metadata_context: Context, ) -> Tuple[Graph, Graph, Dict, List[str]]: """Returns a data and a metadata graph""" if hasattr(resource, "context"): @@ -318,12 +327,17 @@ def _as_graphs( ) converted, json_array = _add_ld_keys(resource, output_context, context.base) converted["@context"] = context.document["@context"] - return _dicts_to_graph(converted, resource._store_metadata, store_metadata, - metadata_context) + (converted,) + (json_array,) + return ( + _dicts_to_graph( + converted, resource._store_metadata, store_metadata, metadata_context + ) + + (converted,) + + (json_array,) + ) def _dicts_to_graph( - data: Dict, metadata: Dict, store_meta: bool, metadata_context: Context + data: Dict, metadata: Dict, store_meta: bool, metadata_context: Context ) -> Tuple[Graph, Graph]: json_str = json.dumps(data) graph = Graph().parse(data=json_str, format="json-ld") @@ -341,9 +355,9 @@ def _dicts_to_graph( def recursive_resolve( - context: Union[Dict, List, str], - resolver: Optional[Callable], - already_loaded: List = [], + context: Union[Dict, List, str], + resolver: Optional[Callable], + already_loaded: List = [], ) -> Dict: document = {} if isinstance(context, list): @@ -351,6 +365,10 @@ def recursive_resolve( if x not in already_loaded: document.update(recursive_resolve(x, resolver, already_loaded)) elif isinstance(context, str) and context not in already_loaded: + if not resolver: + raise AttributeError( + f"Unable to resolve the jsonld context '{context}': a None resolver were provided" + ) doc = resolver(context) document.update(recursive_resolve(doc, resolver, already_loaded)) already_loaded.append(context) @@ -360,7 +378,7 @@ def recursive_resolve( def _resource_context( - resource: Resource, model_context: Context, context_resolver: Callable + resource: Resource, model_context: Context, context_resolver: Callable ) -> Context: if hasattr(resource, "context"): if model_context and resource.context == model_context.iri: @@ -408,9 +426,9 @@ def _unpack_from_list(data): def _add_ld_keys( - rsc: [Resource, Dict], - context: Optional[Union[Dict, List, str]], - base: Optional[str], + rsc: [Resource, Dict], + context: Optional[Union[Dict, List, str]], + base: Optional[str], ) -> Union[Dict, List[str]]: local_attrs = {} local_context = None @@ -464,11 +482,12 @@ def _resolve_iri(value: str, context) -> str: return resolved_id raise ValueError( - f"A space character was found in the identifier (key @id) of the provided dictionary: {value}: please remove all spaces") + f"A space character was found in the identifier (key @id) of the provided dictionary: {value}: please remove all spaces" + ) def _remove_ld_keys( - dictionary: dict, context: Context, to_resource: Optional[bool] = True + dictionary: dict, context: Context, to_resource: Optional[bool] = True ) -> Union[Dict, Resource]: local_attrs = {} for k, v in dictionary.items(): @@ -478,8 +497,10 @@ def _remove_ld_keys( else: if k == "@id": if not isinstance(v, str): - raise ValueError(f"Invalid value found in data: value of type {type(v)} " - f"found associated to a \"@id\" key. Only strings are valid") + raise ValueError( + f"Invalid value found in data: value of type {type(v)} " + f'found associated to a "@id" key. Only strings are valid' + ) local_attrs["id"] = _resolve_iri(v, context) elif k.startswith("@") and k in LD_KEYS.values(): local_attrs[k[1:]] = v @@ -488,9 +509,11 @@ def _remove_ld_keys( local_attrs[k] = _remove_ld_keys(v, context, to_resource) elif isinstance(v, list): local_attrs[k] = [ - _remove_ld_keys(item, context, to_resource) - if isinstance(item, dict) - else item + ( + _remove_ld_keys(item, context, to_resource) + if isinstance(item, dict) + else item + ) for item in v ] else: @@ -532,7 +555,7 @@ def _merge_second_list_into_first(first: List, second: List) -> List: def _merge_jsonld( - first: Union[Dict, List, str], second: Union[Dict, List, str] + first: Union[Dict, List, str], second: Union[Dict, List, str] ) -> Union[Dict, List, str]: result = None if isinstance(first, str): From 29280b6683c77730a028b3999f3477fb9111bebd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristina=20E=2E=20Gonz=C3=A1lez-Espinoza?= Date: Tue, 14 May 2024 15:13:19 +0200 Subject: [PATCH 30/49] Add alternateName to agent resolver (#404) * Add alternateName to agent resolver * Added property also to the agent-to-resource mapping --- .../agent-to-resource-mapping.hjson | 1 + .../resolvers/agent_resolver.py | 13 ++++++---- .../resolvers/test_resolver.py | 24 ++++++++++++++----- 3 files changed, 28 insertions(+), 10 deletions(-) diff --git a/examples/configurations/nexus-resolver/agent-to-resource-mapping.hjson b/examples/configurations/nexus-resolver/agent-to-resource-mapping.hjson index 651dcabc6..92da4beae 100644 --- a/examples/configurations/nexus-resolver/agent-to-resource-mapping.hjson +++ b/examples/configurations/nexus-resolver/agent-to-resource-mapping.hjson @@ -4,4 +4,5 @@ name: x.name familyName: x.familyName givenName: x.givenName + alternateName: x.alternateName if hasattr(x, "alternateName") else None } \ No newline at end of file diff --git a/kgforge/specializations/resolvers/agent_resolver.py b/kgforge/specializations/resolvers/agent_resolver.py index 02c3eb388..26894da78 100644 --- a/kgforge/specializations/resolvers/agent_resolver.py +++ b/kgforge/specializations/resolvers/agent_resolver.py @@ -43,13 +43,14 @@ def _resolve(self, text: Union[str, List[str]], target: Optional[str], type: Opt if target and target not in self.service.sources: raise ValueError(f"Unknown target value: {target}. Supported targets for the selected resolvers are: {self.service.sources.keys()}") - properties_to_filter_with = ['name', 'givenName', 'familyName'] + properties_to_filter_with = ['name', 'givenName', 'familyName', 'alternateName'] query_template = """ CONSTRUCT {{ ?id a ?type ; name ?name ; givenName ?givenName ; - familyName ?familyName + familyName ?familyName ; + alternateName ?alternateName . }} WHERE {{ GRAPH ?g {{ ?id a ?type . @@ -62,12 +63,16 @@ def _resolve(self, text: Union[str, List[str]], target: Optional[str], type: Opt OPTIONAL {{ ?id familyName ?familyName . }} + OPTIONAL {{ + ?id alternateName ?alternateName . + }} {{ SELECT * WHERE {{ {{ {0} ; name ?name {1} }} UNION {{ {0} ; familyName ?familyName; givenName ?givenName {2} }} UNION - {{ {0} ; familyName ?familyName; givenName ?givenName {3} }} - }} LIMIT {4} + {{ {0} ; familyName ?familyName; givenName ?givenName {3} }} UNION + {{ {0} ; alternateName ?alternateName {4} }} + }} LIMIT {5} }} }} }} diff --git a/tests/specializations/resolvers/test_resolver.py b/tests/specializations/resolvers/test_resolver.py index 84f8f1392..766cae151 100644 --- a/tests/specializations/resolvers/test_resolver.py +++ b/tests/specializations/resolvers/test_resolver.py @@ -129,7 +129,8 @@ ?id a ?type ; name ?name ; givenName ?givenName ; - familyName ?familyName + familyName ?familyName ; + alternateName ?alternateName . }} WHERE {{ ?id a ?type . OPTIONAL {{ @@ -141,23 +142,28 @@ OPTIONAL {{ ?id familyName ?familyName . }} + OPTIONAL {{ + ?id alternateName ?alternateName . + }} {{ SELECT * WHERE {{ {{ {0} ; name ?name {1} }} UNION {{ {0} ; familyName ?familyName; givenName ?givenName {2} }} UNION - {{ {0} ; familyName ?familyName; givenName ?givenName {3} }} - }} LIMIT {4} + {{ {0} ; familyName ?familyName; givenName ?givenName {3} }} UNION + {{ {0} ; alternateName ?alternateName {4} }} + }} LIMIT {5} }} }} """), - (['name', 'givenName', 'familyName']), + (['name', 'givenName', 'familyName', 'alternateName']), ("EPFL"), (""" CONSTRUCT { ?id a ?type ; name ?name ; givenName ?givenName ; - familyName ?familyName + familyName ?familyName ; + alternateName ?alternateName . } WHERE { ?id a ?type . OPTIONAL { @@ -169,6 +175,9 @@ OPTIONAL { ?id familyName ?familyName . } + OPTIONAL { + ?id alternateName ?alternateName . + } { SELECT * WHERE { { ?id "false"^^xsd:boolean ; a Class ; @@ -179,7 +188,10 @@ FILTER(?v0 = "value_1") ; familyName ?familyName; givenName ?givenName FILTER (?givenName = "EPFL") } UNION { ?id "false"^^xsd:boolean ; a Class ; path_1 ?v0 . - FILTER(?v0 = "value_1") ; familyName ?familyName; givenName ?givenName FILTER (?familyName = "EPFL") } + FILTER(?v0 = "value_1") ; familyName ?familyName; givenName ?givenName FILTER (?familyName = "EPFL") } UNION + { ?id "false"^^xsd:boolean ; a Class ; + path_1 ?v0 . + FILTER(?v0 = "value_1") ; alternateName ?alternateName FILTER (?alternateName = "EPFL") } } LIMIT 1 } } From 3d8a37c9c70141c5f66c2c0a128c27e20fa05a85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristina=20E=2E=20Gonz=C3=A1lez-Espinoza?= Date: Tue, 21 May 2024 14:58:32 +0200 Subject: [PATCH 31/49] Add `add_image` method to `Dataset` entity (#389) * Make add_image method of a Dataset, and not of KnowledgeGraphForge * Update notebooks with example of dataset.add_image method --- examples/data/non_existing_person.jpg | Bin 0 -> 540097 bytes .../getting-started/02 - Datasets.ipynb | 663 +++--------------- .../getting-started/03 - Storing.ipynb | 68 +- kgforge/core/archetypes/store.py | 9 + kgforge/specializations/resources/datasets.py | 7 + 5 files changed, 146 insertions(+), 601 deletions(-) create mode 100644 examples/data/non_existing_person.jpg diff --git a/examples/data/non_existing_person.jpg b/examples/data/non_existing_person.jpg new file mode 100644 index 0000000000000000000000000000000000000000..275529d776851705ef0e743f3a5ed38446a9b375 GIT binary patch literal 540097 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
  • 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 z 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%0D#}UAD(NRaVB_pN+dh4nhldqR+sFi z)LAG9pxNCjHYnSN1kpn{9s=qu*pR?s{6Oxo61=>nI9hGWBvngQVK3I zNiyde_4y7zFoFlSF!M&WDa{V+z6s5wX1*3=Q98|inIUQqs3+Uhb|N4F1B~M+ zw*oUjM@;sj&rl&dD)lR(_AYy$XD4aSp>g~{{x5RBdHlu4Ubsnfj(hGD$x*QhK>&b2 ze91@U3868#cOsqqr{!t;cB=$!R^xJs5T5ByIHIkXOmsr#t~6UGI5ED&;!BFuwJ)(e zv+hEwgZ;}NEN(Q^riYK)VI&%j-_mtS| z-*Sx2M`u)4Kk}eXY)HyHR*9j@tfI)oCkpu|w})z`9o!SQX+n!q=B^SUMOKs=C4H#J-1$y7B8!*p^Hg#(6zuFytq}Cl+0t@f4!h@s z6y}!izg4S!{1aV1(vCA&8`Wxqhhmt=eh8e%?BJcYckDyQ&wLT4{o517=P1{K8&mM} zP9PLcGO|!SYwcHD*5YC^&2#t9z_~xddp*T7)aN^CK7Sz88k)r0d=Rz4Xj)gpM%r*k z

    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�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

      |MdYrl2KmQg-& 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

      <>t(xiZe@ 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

      b;81 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 Jf)pZ27Gq86uQi_|5=9_sjF9ghj6D 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 _register_one\n", - " True\n" - ] - } - ], + "outputs": [], "source": [ "forge.register(persons)" ] }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "metadata": { "scrolled": true }, - "outputs": [ - { - "data": { - "text/plain": [ - "{'id': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/980a7cd9-36ef-4fc9-95b8-cbf622b49fd8',\n", - " 'type': 'Dataset',\n", - " 'hasPart': {'distribution': {'type': 'DataDownload',\n", - " 'atLocation': {'type': 'Location',\n", - " 'store': {'id': 'https://bluebrain.github.io/nexus/vocabulary/diskStorageDefault',\n", - " 'type': 'DiskStorage',\n", - " '_rev': 1}},\n", - " 'contentSize': {'unitCode': 'bytes', 'value': 52},\n", - " 'contentUrl': 'https://bbp.epfl.ch/nexus/v1/files/dke/kgforge/2737f7f0-950a-471d-ae60-80b79c7451bd',\n", - " 'digest': {'algorithm': 'SHA-256',\n", - " 'value': '1dacd765946963fda4949753659089c5f532714b418d30788bedddfec47a389f'},\n", - " 'encodingFormat': 'text/csv',\n", - " 'name': 'persons.csv'}},\n", - " 'name': 'Interesting Persons'}" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "forge.as_json(persons)" ] }, { "cell_type": "code", - "execution_count": 11, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -191,7 +145,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -200,7 +154,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -209,57 +163,20 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " _register_one\n", - " True\n" - ] - } - ], + "outputs": [], "source": [ "forge.register(associations)" ] }, { "cell_type": "code", - "execution_count": 15, + "execution_count": null, "metadata": { "scrolled": true }, - "outputs": [ - { - "data": { - "text/plain": [ - "{'id': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/80bd2bcb-b84f-4418-9d2e-42712a59fbfb',\n", - " 'type': 'Dataset',\n", - " 'derivation': {'type': 'Derivation',\n", - " 'entity': {'id': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/980a7cd9-36ef-4fc9-95b8-cbf622b49fd8?rev=1',\n", - " 'type': 'Dataset',\n", - " 'name': 'Interesting Persons'}},\n", - " 'hasPart': {'distribution': {'type': 'DataDownload',\n", - " 'atLocation': {'type': 'Location',\n", - " 'store': {'id': 'https://bluebrain.github.io/nexus/vocabulary/diskStorageDefault',\n", - " 'type': 'DiskStorage',\n", - " '_rev': 1}},\n", - " 'contentSize': {'unitCode': 'bytes', 'value': 477},\n", - " 'contentUrl': 'https://bbp.epfl.ch/nexus/v1/files/dke/kgforge/d6b03d5b-4007-48d7-9432-5bf302c62999',\n", - " 'digest': {'algorithm': 'SHA-256',\n", - " 'value': '789aa07948683fe036ac29811814a826b703b562f7d168eb70dee1fabde26859'},\n", - " 'encodingFormat': 'text/tab-separated-values',\n", - " 'name': 'associations.tsv'}},\n", - " 'name': 'Associations data'}" - ] - }, - "execution_count": 15, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "forge.as_json(associations)" ] @@ -281,7 +198,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -301,25 +218,16 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "total 8\n", - "-rw-r--r-- 1 mfsy staff 477 Apr 12 17:13 associations.tsv\n" - ] - } - ], + "outputs": [], "source": [ "! ls -l ./downloaded" ] }, { "cell_type": "code", - "execution_count": 18, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -335,7 +243,7 @@ }, { "cell_type": "code", - "execution_count": 59, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -344,7 +252,7 @@ }, { "cell_type": "code", - "execution_count": 60, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -353,51 +261,27 @@ }, { "cell_type": "code", - "execution_count": 61, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " _register_one\n", - " True\n" - ] - } - ], + "outputs": [], + "source": [ + "persons.add_image(path='../../data/non_existing_person.jpg', content_type='application/jpeg', about='Person')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [ "forge.register(persons)" ] }, { "cell_type": "code", - "execution_count": 62, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{'id': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/3579d0f7-dbf4-40be-90e5-cd641704dfb3',\n", - " 'type': 'Dataset',\n", - " 'distribution': {'type': 'DataDownload',\n", - " 'atLocation': {'type': 'Location',\n", - " 'store': {'id': 'https://bluebrain.github.io/nexus/vocabulary/diskStorageDefault',\n", - " 'type': 'DiskStorage',\n", - " '_rev': 1}},\n", - " 'contentSize': {'unitCode': 'bytes', 'value': 477},\n", - " 'contentUrl': 'https://bbp.epfl.ch/nexus/v1/files/dke/kgforge/dbb6814c-ef9c-4320-b8a0-bf8190dd510a',\n", - " 'digest': {'algorithm': 'SHA-256',\n", - " 'value': '789aa07948683fe036ac29811814a826b703b562f7d168eb70dee1fabde26859'},\n", - " 'encodingFormat': 'text/tab-separated-values',\n", - " 'name': 'associations.tsv'},\n", - " 'name': 'Interesting Persons'}" - ] - }, - "execution_count": 62, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "forge.as_json(persons)" ] @@ -422,7 +306,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -431,7 +315,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -440,7 +324,7 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -449,7 +333,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -458,7 +342,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -467,26 +351,16 @@ }, { "cell_type": "code", - "execution_count": 26, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 2\n", - " _register_many\n", - " True\n" - ] - } - ], + "outputs": [], "source": [ "forge.register(persons)" ] }, { "cell_type": "code", - "execution_count": 27, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -495,7 +369,7 @@ }, { "cell_type": "code", - "execution_count": 28, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -504,57 +378,27 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " _register_one\n", - " True\n" - ] - } - ], + "outputs": [], "source": [ "forge.register(dataset)" ] }, { "cell_type": "code", - "execution_count": 30, + "execution_count": null, "metadata": { "scrolled": true }, - "outputs": [ - { - "data": { - "text/plain": [ - "{'id': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/46d34055-c662-4a7d-90f4-2c866f89cf57',\n", - " 'type': 'Dataset',\n", - " 'hasPart': [{'id': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/0a2041a9-12f7-49aa-b302-48bb09450832?rev=1',\n", - " 'type': 'Person',\n", - " 'distribution': {'contentUrl': 'https://bbp.epfl.ch/nexus/v1/files/dke/kgforge/901d4b2e-2b67-4504-aca7-3ab93966dbad'},\n", - " 'name': 'Jane Doe'},\n", - " {'id': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/87652108-38ca-4fe2-8e41-9ba5ef22f32b?rev=1',\n", - " 'type': 'Person',\n", - " 'distribution': {'contentUrl': 'https://bbp.epfl.ch/nexus/v1/files/dke/kgforge/86eb143e-89cb-462d-af0e-48afb7172f2d'},\n", - " 'name': 'John Smith'}],\n", - " 'name': 'Interesting people'}" - ] - }, - "execution_count": 30, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "forge.as_json(dataset)" ] }, { "cell_type": "code", - "execution_count": 34, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -563,28 +407,16 @@ }, { "cell_type": "code", - "execution_count": 35, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "total 32\n", - "-rw-r--r-- 1 mfsy staff 477 Apr 12 17:14 associations.tsv\n", - "-rw-r--r-- 1 mfsy staff 477 Apr 12 17:14 associations.tsv.20220412171438\n", - "-rw-r--r-- 1 mfsy staff 52 Apr 12 17:14 persons.csv\n", - "-rw-r--r-- 1 mfsy staff 52 Apr 12 17:14 persons.csv.20220412171438\n" - ] - } - ], + "outputs": [], "source": [ "! ls -l ./downloaded" ] }, { "cell_type": "code", - "execution_count": 31, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -600,80 +432,9 @@ }, { "cell_type": "code", - "execution_count": 63, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "{\n", - " id: https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/0a2041a9-12f7-49aa-b302-48bb09450832\n", - " type: Person\n", - " distribution:\n", - " {\n", - " type: DataDownload\n", - " atLocation:\n", - " {\n", - " type: Location\n", - " store:\n", - " {\n", - " id: https://bluebrain.github.io/nexus/vocabulary/diskStorageDefault\n", - " type: DiskStorage\n", - " _rev: 1\n", - " }\n", - " }\n", - " contentSize:\n", - " {\n", - " unitCode: bytes\n", - " value: 477\n", - " }\n", - " contentUrl: https://bbp.epfl.ch/nexus/v1/files/dke/kgforge/901d4b2e-2b67-4504-aca7-3ab93966dbad\n", - " digest:\n", - " {\n", - " algorithm: SHA-256\n", - " value: 789aa07948683fe036ac29811814a826b703b562f7d168eb70dee1fabde26859\n", - " }\n", - " encodingFormat: text/tab-separated-values\n", - " name: associations.tsv\n", - " }\n", - " name: Jane Doe\n", - "}\n", - "{\n", - " id: https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/87652108-38ca-4fe2-8e41-9ba5ef22f32b\n", - " type: Person\n", - " distribution:\n", - " {\n", - " type: DataDownload\n", - " atLocation:\n", - " {\n", - " type: Location\n", - " store:\n", - " {\n", - " id: https://bluebrain.github.io/nexus/vocabulary/diskStorageDefault\n", - " type: DiskStorage\n", - " _rev: 1\n", - " }\n", - " }\n", - " contentSize:\n", - " {\n", - " unitCode: bytes\n", - " value: 52\n", - " }\n", - " contentUrl: https://bbp.epfl.ch/nexus/v1/files/dke/kgforge/86eb143e-89cb-462d-af0e-48afb7172f2d\n", - " digest:\n", - " {\n", - " algorithm: SHA-256\n", - " value: 1dacd765946963fda4949753659089c5f532714b418d30788bedddfec47a389f\n", - " }\n", - " encodingFormat: text/csv\n", - " name: persons.csv\n", - " }\n", - " name: John Smith\n", - "}\n" - ] - } - ], + "outputs": [], "source": [ "dataset = Dataset.from_resource(forge, [jane, john], store_metadata=True)\n", "print(*dataset, sep=\"\\n\")" @@ -702,7 +463,7 @@ }, { "cell_type": "code", - "execution_count": 37, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -711,67 +472,16 @@ }, { "cell_type": "code", - "execution_count": 38, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "

      " - ], - "text/plain": [ - " type name\n", - "0 Person Marie Curie\n", - "1 Person Albert Einstein" - ] - }, - "execution_count": 38, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "dataframe" ] }, { "cell_type": "code", - "execution_count": 39, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -780,26 +490,16 @@ }, { "cell_type": "code", - "execution_count": 40, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 2\n", - " _register_many\n", - " True\n" - ] - } - ], + "outputs": [], "source": [ "forge.register(persons)" ] }, { "cell_type": "code", - "execution_count": 41, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -808,7 +508,7 @@ }, { "cell_type": "code", - "execution_count": 42, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -817,48 +517,20 @@ }, { "cell_type": "code", - "execution_count": 43, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " _register_one\n", - " True\n" - ] - } - ], + "outputs": [], "source": [ "forge.register(dataset)" ] }, { "cell_type": "code", - "execution_count": 44, + "execution_count": null, "metadata": { "scrolled": true }, - "outputs": [ - { - "data": { - "text/plain": [ - "{'id': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/5e1118bc-70b6-4b1d-b8ba-060a6f684230',\n", - " 'type': 'Dataset',\n", - " 'hasPart': [{'id': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/58635f85-c6cc-4a7f-bf16-1558a5713080?rev=1',\n", - " 'type': 'Person',\n", - " 'name': 'Marie Curie'},\n", - " {'id': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/a9c2740b-2ef9-4557-841c-6ab425d35906?rev=1',\n", - " 'type': 'Person',\n", - " 'name': 'Albert Einstein'}],\n", - " 'name': 'Interesting people'}" - ] - }, - "execution_count": 44, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "forge.as_json(dataset)" ] @@ -872,7 +544,7 @@ }, { "cell_type": "code", - "execution_count": 45, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -881,96 +553,16 @@ }, { "cell_type": "code", - "execution_count": 46, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
      \n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
      idnametypeagent__typeagent__nameagent__gender__idagent__gender__typeagent__gender__labeldistribution
      0(missing)Curie AssociationAssociationPersonMarie Curiehttp://purl.obolibrary.org/obo/PATO_0000383LabeledOntologyEntityfemale../../data/scientists-database/marie_curie.txt
      1(missing)Einstein AssociationAssociationPersonAlbert Einsteinhttp://purl.obolibrary.org/obo/PATO_0000384LabeledOntologyEntitymale../../data/scientists-database/albert_einstein...
      \n", - "
      " - ], - "text/plain": [ - " id name type agent__type agent__name \\\n", - "0 (missing) Curie Association Association Person Marie Curie \n", - "1 (missing) Einstein Association Association Person Albert Einstein \n", - "\n", - " agent__gender__id agent__gender__type \\\n", - "0 http://purl.obolibrary.org/obo/PATO_0000383 LabeledOntologyEntity \n", - "1 http://purl.obolibrary.org/obo/PATO_0000384 LabeledOntologyEntity \n", - "\n", - " agent__gender__label distribution \n", - "0 female ../../data/scientists-database/marie_curie.txt \n", - "1 male ../../data/scientists-database/albert_einstein... " - ] - }, - "execution_count": 46, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "dataframe" ] }, { "cell_type": "code", - "execution_count": 47, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -979,7 +571,7 @@ }, { "cell_type": "code", - "execution_count": 48, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -988,74 +580,25 @@ }, { "cell_type": "code", - "execution_count": 49, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "{\n", - " type: Association\n", - " agent:\n", - " {\n", - " type: Person\n", - " gender:\n", - " {\n", - " id: http://purl.obolibrary.org/obo/PATO_0000383\n", - " type: LabeledOntologyEntity\n", - " label: female\n", - " }\n", - " name: Marie Curie\n", - " }\n", - " distribution: LazyAction(operation=Store.upload, args=['../../data/scientists-database/marie_curie.txt', None])\n", - " name: Curie Association\n", - "}\n", - "{\n", - " type: Association\n", - " agent:\n", - " {\n", - " type: Person\n", - " gender:\n", - " {\n", - " id: http://purl.obolibrary.org/obo/PATO_0000384\n", - " type: LabeledOntologyEntity\n", - " label: male\n", - " }\n", - " name: Albert Einstein\n", - " }\n", - " distribution: LazyAction(operation=Store.upload, args=['../../data/scientists-database/albert_einstein.txt', None])\n", - " name: Einstein Association\n", - "}\n" - ] - } - ], + "outputs": [], "source": [ "print(*associations, sep=\"\\n\")" ] }, { "cell_type": "code", - "execution_count": 50, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " 2\n", - " _register_many\n", - " True\n" - ] - } - ], + "outputs": [], "source": [ "forge.register(associations)" ] }, { "cell_type": "code", - "execution_count": 51, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1064,7 +607,7 @@ }, { "cell_type": "code", - "execution_count": 52, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1073,50 +616,20 @@ }, { "cell_type": "code", - "execution_count": 53, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - " _register_one\n", - " True\n" - ] - } - ], + "outputs": [], "source": [ "forge.register(dataset)" ] }, { "cell_type": "code", - "execution_count": 54, + "execution_count": null, "metadata": { "scrolled": true }, - "outputs": [ - { - "data": { - "text/plain": [ - "{'id': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/ae57773c-9e71-4ec0-85b9-6e5f52a04349',\n", - " 'type': 'Dataset',\n", - " 'hasPart': [{'id': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/8fc91342-42f7-4946-8a5d-a21be3448684?rev=1',\n", - " 'type': 'Association',\n", - " 'distribution': {'contentUrl': 'https://bbp.epfl.ch/nexus/v1/files/dke/kgforge/5e4e7cb5-707a-4d4a-9682-36e5b993fe40'},\n", - " 'name': 'Curie Association'},\n", - " {'id': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/d78d842a-89f9-4273-bc70-9666c1f72781?rev=1',\n", - " 'type': 'Association',\n", - " 'distribution': {'contentUrl': 'https://bbp.epfl.ch/nexus/v1/files/dke/kgforge/1dc1c1a2-f13c-47d6-9533-92c97bf5a5d6'},\n", - " 'name': 'Einstein Association'}],\n", - " 'name': 'Interesting associations'}" - ] - }, - "execution_count": 54, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "forge.as_json(dataset)" ] @@ -1124,9 +637,9 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3.7 (nexusforgelatest)", + "display_name": "dev-forge", "language": "python", - "name": "nexusforgelatest" + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -1138,7 +651,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.10" + "version": "3.8.18" } }, "nbformat": 4, diff --git a/examples/notebooks/getting-started/03 - Storing.ipynb b/examples/notebooks/getting-started/03 - Storing.ipynb index 1c45dbf8b..5093e3920 100644 --- a/examples/notebooks/getting-started/03 - Storing.ipynb +++ b/examples/notebooks/getting-started/03 - Storing.ipynb @@ -37,7 +37,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ @@ -53,7 +53,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ @@ -195,19 +195,19 @@ { "data": { "text/plain": [ - "{'id': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/24dbbd9e-92e0-4519-99d7-ec9bae56f7ea',\n", + "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/crisely09/_/f1d6baf4-080f-4864-b9e1-bdd112458e98',\n", " '_constrainedBy': 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", - " '_createdAt': '2022-04-12T15:54:23.358Z',\n", - " '_createdBy': 'https://bbp.epfl.ch/nexus/v1/realms/bbp/users/sy',\n", + " '_createdAt': '2024-02-26T14:23:06.917Z',\n", + " '_createdBy': 'https://sandbox.bluebrainnexus.io/v1/realms/github/users/crisely09',\n", " '_deprecated': False,\n", - " '_incoming': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/24dbbd9e-92e0-4519-99d7-ec9bae56f7ea/incoming',\n", - " '_outgoing': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/24dbbd9e-92e0-4519-99d7-ec9bae56f7ea/outgoing',\n", - " '_project': 'https://bbp.epfl.ch/nexus/v1/projects/dke/kgforge',\n", + " '_incoming': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/crisely09/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fcrisely09%2F_%2Ff1d6baf4-080f-4864-b9e1-bdd112458e98/incoming',\n", + " '_outgoing': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/crisely09/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fcrisely09%2F_%2Ff1d6baf4-080f-4864-b9e1-bdd112458e98/outgoing',\n", + " '_project': 'https://sandbox.bluebrainnexus.io/v1/projects/github-users/crisely09',\n", " '_rev': 1,\n", - " '_schemaProject': 'https://bbp.epfl.ch/nexus/v1/projects/dke/kgforge',\n", - " '_self': 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/24dbbd9e-92e0-4519-99d7-ec9bae56f7ea',\n", - " '_updatedAt': '2022-04-12T15:54:23.358Z',\n", - " '_updatedBy': 'https://bbp.epfl.ch/nexus/v1/realms/bbp/users/sy'}" + " '_schemaProject': 'https://sandbox.bluebrainnexus.io/v1/projects/github-users/crisely09',\n", + " '_self': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/crisely09/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fcrisely09%2F_%2Ff1d6baf4-080f-4864-b9e1-bdd112458e98',\n", + " '_updatedAt': '2024-02-26T14:23:06.917Z',\n", + " '_updatedBy': 'https://sandbox.bluebrainnexus.io/v1/realms/github/users/crisely09'}" ] }, "execution_count": 9, @@ -305,7 +305,8 @@ "output_type": "stream", "text": [ " _register_one\n", - " True\n" + " False\n", + " RegistrationError: resource should not be synchronized\n" ] } ], @@ -327,12 +328,7 @@ "name": "stdout", "output_type": "stream", "text": [ - " 1\n", - " _register_many\n", - " False\n", - " RegistrationError: resource should not be synchronized\n", - "\n", - " 1\n", + " 2\n", " _register_many\n", " True\n" ] @@ -355,7 +351,7 @@ { "data": { "text/plain": [ - "False" + "True" ] }, "execution_count": 16, @@ -469,7 +465,7 @@ "text": [ "{\n", " type: Person\n", - " distribution: LazyAction(operation=Store.upload, args=['../../data/my_data.xwz', 'application/xwz'])\n", + " distribution: LazyAction(operation=Store.upload, args=['../../data/my_data.xwz', 'application/xwz', ])\n", " name: John Smith\n", "}\n" ] @@ -482,7 +478,7 @@ }, { "cell_type": "code", - "execution_count": 26, + "execution_count": 25, "metadata": {}, "outputs": [ { @@ -498,6 +494,26 @@ "forge.register(john)" ] }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " @id: https://sandbox.bluebrainnexus.io/v1/resources/github-users/crisely09/_/c7d7cfc3-9327-48c5-8c5c-f010a0238112\n", + " about: Person\n", + "}\n" + ] + } + ], + "source": [ + "print(john.image)" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -617,7 +633,7 @@ { "data": { "text/plain": [ - "False" + "True" ] }, "execution_count": 34, @@ -802,9 +818,9 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3.7 (nexusforgelatest)", + "display_name": "dev-forge", "language": "python", - "name": "nexusforgelatest" + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -816,7 +832,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.10" + "version": "3.8.18" } }, "nbformat": 4, diff --git a/kgforge/core/archetypes/store.py b/kgforge/core/archetypes/store.py index feb479062..9a7cb5c2e 100644 --- a/kgforge/core/archetypes/store.py +++ b/kgforge/core/archetypes/store.py @@ -136,7 +136,16 @@ def upload( raise UploadingError("no file_resource_mapping has been configured") + def upload_image(self, path: str, content_type: str, about: str, + forge: 'KnowledgeGraphForge'): + p = Path(path) + # Get response + uploaded = self._upload(p, content_type) + return forge.from_json({'@id': uploaded['@id'], + 'about': about}) + def _upload(self, path: Path, content_type: str) -> Union[Any, List[Any]]: + # path: Union[FilePath, DirPath]. if path.is_dir(): filepaths = [ diff --git a/kgforge/specializations/resources/datasets.py b/kgforge/specializations/resources/datasets.py index 177e37689..6a06911af 100644 --- a/kgforge/specializations/resources/datasets.py +++ b/kgforge/specializations/resources/datasets.py @@ -52,6 +52,13 @@ def add_distribution(self, path: str, content_type: str = None) -> None: action = self._forge.attach(path, content_type) _set(self, "distribution", action) + @catch + def add_image(self, path: str, content_type: str = None, about: str = None) -> None: + # path: FilePath. + """Add an image form of the dataset.""" + action = LazyAction(self._forge._store.upload_image, path, content_type, about, self._forge) + _set(self, "image", action) + @catch def add_contribution(self, resource: Union[str, Resource], versioned: bool = True, **kwargs) -> None: # resource: Union[str, Resource]. From 8db6ae84333fa8ed6d88212171bbbd3695d71fc2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niccol=C3=B2=20=28Nico=29=20Ricardi?= <48564660+NicoRicardi@users.noreply.github.com> Date: Tue, 21 May 2024 15:50:45 +0200 Subject: [PATCH 32/49] Update prod-forge-nexus.yml resolve with target species returns only species and strain returns strains --- examples/notebooks/use-cases/prod-forge-nexus.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/examples/notebooks/use-cases/prod-forge-nexus.yml b/examples/notebooks/use-cases/prod-forge-nexus.yml index 02d7c0cc6..78a714444 100644 --- a/examples/notebooks/use-cases/prod-forge-nexus.yml +++ b/examples/notebooks/use-cases/prod-forge-nexus.yml @@ -50,8 +50,13 @@ Resolvers: - identifier: Species bucket: neurosciencegraph/datamodels filters: - - path: subClassOf*.id - value: Species + - path: has_rank + value: NCBITaxon:species + - identifier: Strain + bucket: neurosciencegraph/datamodels + filters: + - path: has_rank + value: NCBITaxon:strain searchendpoints: sparql: endpoint: "https://bluebrain.github.io/nexus/vocabulary/defaultSparqlIndex" From eb6a56d12990f605ab06f66c23069bf070d44dec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niccol=C3=B2=20Ricardi?= Date: Tue, 21 May 2024 16:06:03 +0200 Subject: [PATCH 33/49] now it works. (has_rank.id and expanded NCBITaxon) --- examples/notebooks/use-cases/prod-forge-nexus.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/examples/notebooks/use-cases/prod-forge-nexus.yml b/examples/notebooks/use-cases/prod-forge-nexus.yml index 78a714444..bb49b0977 100644 --- a/examples/notebooks/use-cases/prod-forge-nexus.yml +++ b/examples/notebooks/use-cases/prod-forge-nexus.yml @@ -50,13 +50,13 @@ Resolvers: - identifier: Species bucket: neurosciencegraph/datamodels filters: - - path: has_rank - value: NCBITaxon:species + - path: has_rank.id + value: http://purl.obolibrary.org/obo/NCBITaxon_species - identifier: Strain bucket: neurosciencegraph/datamodels filters: - - path: has_rank - value: NCBITaxon:strain + - path: has_rank.id + value: http://purl.obolibrary.org/obo/NCBITaxon_strain searchendpoints: sparql: endpoint: "https://bluebrain.github.io/nexus/vocabulary/defaultSparqlIndex" From 89634dd594778790be5abd34c2f92d960449db23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niccol=C3=B2=20Ricardi?= Date: Tue, 21 May 2024 16:59:59 +0200 Subject: [PATCH 34/49] example of resolving with strain ResolvingStrategies.ipynb --- .../use-cases/ResolvingStrategies.ipynb | 73 ++++++++++++++++--- 1 file changed, 62 insertions(+), 11 deletions(-) diff --git a/examples/notebooks/use-cases/ResolvingStrategies.ipynb b/examples/notebooks/use-cases/ResolvingStrategies.ipynb index a5ce1a6ae..e98b35847 100644 --- a/examples/notebooks/use-cases/ResolvingStrategies.ipynb +++ b/examples/notebooks/use-cases/ResolvingStrategies.ipynb @@ -32,7 +32,15 @@ "cell_type": "code", "execution_count": 2, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdin", + "output_type": "stream", + "text": [ + " ········\n" + ] + } + ], "source": [ "import getpass\n", "TOKEN = getpass.getpass()" @@ -75,7 +83,9 @@ " 'BrainRegion': {'bucket': 'neurosciencegraph/datamodels',\n", " 'filters': {'subClassOf*.id': 'BrainRegion'}},\n", " 'Species': {'bucket': 'neurosciencegraph/datamodels',\n", - " 'filters': {'subClassOf*.id': 'Species'}}}}" + " 'filters': {'has_rank.id': 'http://purl.obolibrary.org/obo/NCBITaxon_species'}},\n", + " 'Strain': {'bucket': 'neurosciencegraph/datamodels',\n", + " 'filters': {'has_rank.id': 'http://purl.obolibrary.org/obo/NCBITaxon_strain'}}}}" ] }, "execution_count": 4, @@ -231,16 +241,16 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "['terms', 'CellType', 'BrainRegion', 'Species']" + "['terms', 'CellType', 'BrainRegion', 'Species', 'Strain']" ] }, - "execution_count": 13, + "execution_count": 5, "metadata": {}, "output_type": "execute_result" } @@ -335,7 +345,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 6, "metadata": {}, "outputs": [ { @@ -343,10 +353,19 @@ "output_type": "stream", "text": [ "{\n", - " id: http://purl.obolibrary.org/obo/NCBITaxon_10114\n", + " id: http://purl.obolibrary.org/obo/NCBITaxon_10116\n", " type: Class\n", - " label: Rat\n", - " subClassOf: obo:NCBITaxon_9989\n", + " label: Rattus norvegicus\n", + " altLabel: rat\n", + " atlasRelease:\n", + " {\n", + " id: https://bbp.epfl.ch/neurosciencegraph/data/4906ab85-694f-469d-962f-c0174e901885\n", + " }\n", + " subClassOf:\n", + " [\n", + " nsg:Species\n", + " NCBITaxon:10114\n", + " ]\n", "}\n" ] } @@ -355,6 +374,38 @@ "print(forge.resolve(\"rat\", scope=\"ontology\", target=\"Species\", strategy=\"EXACT_CASE_INSENSITIVE_MATCH\"))" ] }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " id: http://www.ebi.ac.uk/efo/EFO_0001342\n", + " type: Class\n", + " label: Wistar\n", + " altLabel:\n", + " [\n", + " Rats, Wistar\n", + " Wistar rat\n", + " Wistar rats\n", + " ]\n", + " atlasRelease:\n", + " {\n", + " id: https://bbp.epfl.ch/neurosciencegraph/data/4906ab85-694f-469d-962f-c0174e901885\n", + " }\n", + " subClassOf: NCBITaxon:10116\n", + "}\n" + ] + } + ], + "source": [ + "print(forge.resolve(\"Wistar\", scope=\"ontology\", target=\"Strain\", strategy=\"EXACT_CASE_INSENSITIVE_MATCH\"))" + ] + }, { "attachments": {}, "cell_type": "markdown", @@ -410,7 +461,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3.7.13 ('kgforge')", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -424,7 +475,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.13" + "version": "3.11.5" }, "vscode": { "interpreter": { From c5538fec476c796a5dbfae374e32a255b3c59306 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristina=20E=2E=20Gonz=C3=A1lez-Espinoza?= Date: Fri, 24 May 2024 15:09:05 +0200 Subject: [PATCH 35/49] Add method when initializing forge to export pyshacl environment variable (#406) * Add method when initializing forge to export environment variable * Remove addition in setup.py and try os.environ instead of os.system --- kgforge/core/forge.py | 8 ++++++++ tests/core/test_forge.py | 3 ++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/kgforge/core/forge.py b/kgforge/core/forge.py index 913a9aba4..0cb241608 100644 --- a/kgforge/core/forge.py +++ b/kgforge/core/forge.py @@ -15,6 +15,7 @@ from copy import deepcopy from typing import Any, Callable, Dict, List, Optional, Tuple, Union, Type +import os import numpy as np from pandas import DataFrame from rdflib import Graph @@ -205,6 +206,8 @@ def __init__(self, configuration: Union[str, Dict], **kwargs) -> None: :param kwargs: keyword arguments """ + self.set_environment_variables() + if isinstance(configuration, str): config = load_yaml_from_file(configuration) else: @@ -270,6 +273,11 @@ def __init__(self, configuration: Union[str, Dict], **kwargs) -> None: dataset_config, store_config ) + @staticmethod + def set_environment_variables(): + # Set environment variable for pyshacl + os.environ["PYSHACL_USE_FULL_MIXIN"] = "True" + @catch def prefixes(self, pretty: bool = True) -> Optional[Dict[str, str]]: """ diff --git a/tests/core/test_forge.py b/tests/core/test_forge.py index 34c400667..794401213 100644 --- a/tests/core/test_forge.py +++ b/tests/core/test_forge.py @@ -14,7 +14,7 @@ # Test suite for initializing a forge. -import pytest +import os from kgforge.core.forge import KnowledgeGraphForge @@ -28,6 +28,7 @@ class TestForgeInitialization: def test_initialization(self, config): forge = KnowledgeGraphForge(config) + assert os.environ['PYSHACL_USE_FULL_MIXIN'] == "True" assert type(forge._model).__name__ == MODEL assert type(forge._store).__name__ == STORE assert type(forge._resolvers[SCOPE][RESOLVER]).__name__ == RESOLVER From c895b7c150b421307ec40f4ffb36bd886b5c561c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristina=20E=2E=20Gonz=C3=A1lez-Espinoza?= Date: Fri, 31 May 2024 14:10:10 +0200 Subject: [PATCH 36/49] Remove nexus_sdk from nexus store when uploading files and add `x-nxs-file-content-length` to header (#403) * Remove nexus_sdk from nexus store when uploading files * Change content length header to be --- .../specializations/stores/bluebrain_nexus.py | 17 ++++++++++++----- kgforge/specializations/stores/nexus/service.py | 2 ++ 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index 4b238c939..33e7a83d9 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -12,8 +12,10 @@ # You should have received a copy of the GNU Lesser General Public License # along with Blue Brain Nexus Forge. If not, see . +import os import asyncio import copy +import collections import json import mimetypes @@ -24,7 +26,6 @@ from typing import Any, Dict, List, Optional, Tuple, Union, Type from urllib.parse import quote_plus, unquote, urlparse, parse_qs -import nexussdk as nexus import requests from aiohttp import ClientSession, MultipartWriter from aiohttp.hdrs import CONTENT_DISPOSITION, CONTENT_TYPE @@ -71,6 +72,7 @@ REQUEST_TIMEOUT = DEFAULT_REQUEST_TIMEOUT +JSON_DECODER = json.JSONDecoder(object_pairs_hook=collections.OrderedDict) def catch_http_error_nexus( @@ -248,13 +250,18 @@ def _upload_one(self, path: Path, content_type: str) -> Dict: if mime_type is None: mime_type = "application/octet-stream" try: - response = nexus.files.create( - self.organisation, self.project, file, content_type=mime_type - ) + headers = self.service.headers_upload + filename = file.split("/")[-1] + headers[self.service.NEXUS_CONTENT_LENGTH_HEADER] = str(os.path.getsize(file)) + file_obj = { + "file": (filename, open(file, "rb"), mime_type) + } + response = requests.post(self.service.url_files, headers=headers, files=file_obj) + response.raise_for_status() except requests.HTTPError as e: raise UploadingError(_error_message(e)) from e - return response + return JSON_DECODER.decode(response.text) # C[R]UD. diff --git a/kgforge/specializations/stores/nexus/service.py b/kgforge/specializations/stores/nexus/service.py index ec2a17f29..1d20dec41 100644 --- a/kgforge/specializations/stores/nexus/service.py +++ b/kgforge/specializations/stores/nexus/service.py @@ -82,6 +82,8 @@ class Service: SPARQL_ENDPOINT_TYPE = "sparql" ELASTIC_ENDPOINT_TYPE = "elastic" + NEXUS_CONTENT_LENGTH_HEADER = "x-nxs-file-content-length" + def __init__( self, endpoint: str, From 9476d95c88a9d0ba4ae04860cda9caec82a35859 Mon Sep 17 00:00:00 2001 From: Sarah Date: Fri, 31 May 2024 14:15:21 +0200 Subject: [PATCH 37/49] File fetch (#408) * split file get call and property access * split prepare download one * lint --------- Co-authored-by: Leonardo Cristella --- .../specializations/stores/bluebrain_nexus.py | 38 +++++++++++-------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index 33e7a83d9..63744f443 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -472,12 +472,16 @@ def retrieve( query_params=query_params, ) - def _retrieve_filename(self, id_: str) -> Tuple[str, str]: + def _retrieve_file_metadata(self, id_: str) -> Dict: response = requests.get( id_, headers=self.service.headers, timeout=REQUEST_TIMEOUT ) catch_http_error_nexus(response, DownloadingError) metadata = response.json() + return metadata + + def _retrieve_filename(self, id_: str) -> Tuple[str, str]: + metadata = self._retrieve_file_metadata(id_) return metadata["_filename"], metadata["_mediaType"] def _download_many( @@ -557,21 +561,7 @@ def _download_one( for chunk in response.iter_content(chunk_size=4096): f.write(chunk) - def _prepare_download_one( - self, url: str, store_metadata: Optional[DictWrapper], cross_bucket: bool - ) -> Tuple[str, str]: - if cross_bucket: - if store_metadata is not None: - project = store_metadata._project.split("/")[-1] - org = store_metadata._project.split("/")[-2] - else: - raise ValueError( - f"Downloading non registered file is not allowed when cross_bucket is set to {cross_bucket}" - ) - else: - org = self.service.organisation - project = self.service.project - + def _prepare_download_one_with_org_project(self, url: str, org: str, project: str): file_id = url.split("/")[-1] file_id = unquote(file_id) if len(file_id) < 1: @@ -593,6 +583,22 @@ def _prepare_download_one( ) return url_base, f"{org}/{project}" + def _prepare_download_one( + self, url: str, store_metadata: Optional[DictWrapper], cross_bucket: bool + ) -> Tuple[str, str]: + if cross_bucket: + if store_metadata is not None: + org, project = store_metadata._project.split("/") + else: + raise ValueError( + f"Downloading non registered file is not allowed when cross_bucket is set to True" + ) + else: + org = self.service.organisation + project = self.service.project + + return self._prepare_download_one_with_org_project(url, org, project) + # CR[U]D. def update( From 536995b18078b92ff8b9d5bf9f55c9987fc9e213 Mon Sep 17 00:00:00 2001 From: Sarah Date: Sat, 1 Jun 2024 09:19:25 +0200 Subject: [PATCH 38/49] rm nexus sdk usage and dependency (#407) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * rm sdk usage from bluebrainexus store file * rm sdk usage from utils * rm sdk usage from service * rm nexussdk from test * lint * fix patch * change usage of project_fetch function for successful patching in tests * rename module of sdk methods * remove leftover image from store * missing file * restore config * remove s from file name * missing the file, again --------- Co-authored-by: Cristina E. González-Espinoza --- .../getting-started/03 - Storing.ipynb | 126 ++++---- .../specializations/stores/bluebrain_nexus.py | 2 + .../stores/nexus/http_helpers.py | 300 ++++++++++++++++++ .../specializations/stores/nexus/service.py | 14 +- setup.py | 2 +- .../stores/test_bluebrain_nexus.py | 7 +- utils.py | 66 ++-- 7 files changed, 401 insertions(+), 116 deletions(-) create mode 100644 kgforge/specializations/stores/nexus/http_helpers.py diff --git a/examples/notebooks/getting-started/03 - Storing.ipynb b/examples/notebooks/getting-started/03 - Storing.ipynb index 5093e3920..c8ea8a21a 100644 --- a/examples/notebooks/getting-started/03 - Storing.ipynb +++ b/examples/notebooks/getting-started/03 - Storing.ipynb @@ -16,7 +16,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 25, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:20.068658Z", @@ -37,7 +37,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 26, "metadata": {}, "outputs": [], "source": [ @@ -53,7 +53,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 27, "metadata": {}, "outputs": [], "source": [ @@ -76,7 +76,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 28, "metadata": {}, "outputs": [], "source": [ @@ -85,7 +85,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 29, "metadata": {}, "outputs": [ { @@ -110,7 +110,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 30, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.048776Z", @@ -133,7 +133,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 31, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.101282Z", @@ -147,7 +147,7 @@ "True" ] }, - "execution_count": 7, + "execution_count": 31, "metadata": {}, "output_type": "execute_result" } @@ -158,7 +158,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 32, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.086424Z", @@ -173,7 +173,7 @@ "Action(error=None, message=None, operation='_register_one', succeeded=True)" ] }, - "execution_count": 8, + "execution_count": 32, "metadata": {}, "output_type": "execute_result" } @@ -184,7 +184,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 33, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.074512Z", @@ -195,22 +195,22 @@ { "data": { "text/plain": [ - "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/crisely09/_/f1d6baf4-080f-4864-b9e1-bdd112458e98',\n", + "{'id': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/crisely09/_/55be8922-befa-40a1-a1fe-056c0a787e1f',\n", " '_constrainedBy': 'https://bluebrain.github.io/nexus/schemas/unconstrained.json',\n", - " '_createdAt': '2024-02-26T14:23:06.917Z',\n", + " '_createdAt': '2024-05-31T13:25:28.690Z',\n", " '_createdBy': 'https://sandbox.bluebrainnexus.io/v1/realms/github/users/crisely09',\n", " '_deprecated': False,\n", - " '_incoming': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/crisely09/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fcrisely09%2F_%2Ff1d6baf4-080f-4864-b9e1-bdd112458e98/incoming',\n", - " '_outgoing': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/crisely09/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fcrisely09%2F_%2Ff1d6baf4-080f-4864-b9e1-bdd112458e98/outgoing',\n", + " '_incoming': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/crisely09/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fcrisely09%2F_%2F55be8922-befa-40a1-a1fe-056c0a787e1f/incoming',\n", + " '_outgoing': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/crisely09/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fcrisely09%2F_%2F55be8922-befa-40a1-a1fe-056c0a787e1f/outgoing',\n", " '_project': 'https://sandbox.bluebrainnexus.io/v1/projects/github-users/crisely09',\n", " '_rev': 1,\n", " '_schemaProject': 'https://sandbox.bluebrainnexus.io/v1/projects/github-users/crisely09',\n", - " '_self': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/crisely09/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fcrisely09%2F_%2Ff1d6baf4-080f-4864-b9e1-bdd112458e98',\n", - " '_updatedAt': '2024-02-26T14:23:06.917Z',\n", + " '_self': 'https://sandbox.bluebrainnexus.io/v1/resources/github-users/crisely09/_/https:%2F%2Fsandbox.bluebrainnexus.io%2Fv1%2Fresources%2Fgithub-users%2Fcrisely09%2F_%2F55be8922-befa-40a1-a1fe-056c0a787e1f',\n", + " '_updatedAt': '2024-05-31T13:25:28.690Z',\n", " '_updatedBy': 'https://sandbox.bluebrainnexus.io/v1/realms/github/users/crisely09'}" ] }, - "execution_count": 9, + "execution_count": 33, "metadata": {}, "output_type": "execute_result" } @@ -228,7 +228,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 34, "metadata": {}, "outputs": [], "source": [ @@ -237,7 +237,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 35, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.109091Z", @@ -251,7 +251,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 36, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.121071Z", @@ -265,7 +265,7 @@ "False" ] }, - "execution_count": 12, + "execution_count": 36, "metadata": {}, "output_type": "execute_result" } @@ -283,7 +283,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 37, "metadata": {}, "outputs": [], "source": [ @@ -292,7 +292,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 38, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.132160Z", @@ -316,7 +316,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 39, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.141175Z", @@ -340,7 +340,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 40, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.150719Z", @@ -354,7 +354,7 @@ "True" ] }, - "execution_count": 16, + "execution_count": 40, "metadata": {}, "output_type": "execute_result" } @@ -365,7 +365,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 41, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.159904Z", @@ -379,7 +379,7 @@ "True" ] }, - "execution_count": 17, + "execution_count": 41, "metadata": {}, "output_type": "execute_result" } @@ -404,7 +404,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 42, "metadata": {}, "outputs": [], "source": [ @@ -413,7 +413,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 43, "metadata": {}, "outputs": [], "source": [ @@ -422,7 +422,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 44, "metadata": {}, "outputs": [ { @@ -447,7 +447,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 45, "metadata": {}, "outputs": [], "source": [ @@ -456,7 +456,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 46, "metadata": {}, "outputs": [ { @@ -465,7 +465,7 @@ "text": [ "{\n", " type: Person\n", - " distribution: LazyAction(operation=Store.upload, args=['../../data/my_data.xwz', 'application/xwz', ])\n", + " distribution: LazyAction(operation=Store.upload, args=['../../data/my_data.xwz', 'application/xwz', ])\n", " name: John Smith\n", "}\n" ] @@ -478,7 +478,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 47, "metadata": {}, "outputs": [ { @@ -494,26 +494,6 @@ "forge.register(john)" ] }, - { - "cell_type": "code", - "execution_count": 26, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "{\n", - " @id: https://sandbox.bluebrainnexus.io/v1/resources/github-users/crisely09/_/c7d7cfc3-9327-48c5-8c5c-f010a0238112\n", - " about: Person\n", - "}\n" - ] - } - ], - "source": [ - "print(john.image)" - ] - }, { "cell_type": "markdown", "metadata": {}, @@ -523,7 +503,7 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": 48, "metadata": {}, "outputs": [], "source": [ @@ -532,7 +512,7 @@ }, { "cell_type": "code", - "execution_count": 28, + "execution_count": 49, "metadata": {}, "outputs": [], "source": [ @@ -541,7 +521,7 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 50, "metadata": {}, "outputs": [ { @@ -559,7 +539,7 @@ }, { "cell_type": "code", - "execution_count": 30, + "execution_count": 51, "metadata": {}, "outputs": [ { @@ -581,7 +561,7 @@ }, { "cell_type": "code", - "execution_count": 31, + "execution_count": 52, "metadata": {}, "outputs": [], "source": [ @@ -590,7 +570,7 @@ }, { "cell_type": "code", - "execution_count": 32, + "execution_count": 53, "metadata": {}, "outputs": [], "source": [ @@ -599,7 +579,7 @@ }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 54, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.190111Z", @@ -622,7 +602,7 @@ }, { "cell_type": "code", - "execution_count": 34, + "execution_count": 55, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.199561Z", @@ -636,7 +616,7 @@ "True" ] }, - "execution_count": 34, + "execution_count": 55, "metadata": {}, "output_type": "execute_result" } @@ -647,7 +627,7 @@ }, { "cell_type": "code", - "execution_count": 35, + "execution_count": 56, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.217024Z", @@ -681,7 +661,7 @@ }, { "cell_type": "code", - "execution_count": 36, + "execution_count": 57, "metadata": {}, "outputs": [ { @@ -702,7 +682,7 @@ }, { "cell_type": "code", - "execution_count": 37, + "execution_count": 58, "metadata": {}, "outputs": [ { @@ -720,7 +700,7 @@ }, { "cell_type": "code", - "execution_count": 38, + "execution_count": 59, "metadata": {}, "outputs": [ { @@ -729,7 +709,7 @@ "True" ] }, - "execution_count": 38, + "execution_count": 59, "metadata": {}, "output_type": "execute_result" } @@ -740,7 +720,7 @@ }, { "cell_type": "code", - "execution_count": 39, + "execution_count": 60, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.276769Z", @@ -767,7 +747,7 @@ }, { "cell_type": "code", - "execution_count": 40, + "execution_count": 61, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.286647Z", @@ -790,7 +770,7 @@ }, { "cell_type": "code", - "execution_count": 41, + "execution_count": 62, "metadata": { "ExecuteTime": { "end_time": "2019-09-23T18:50:21.297768Z", diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index 63744f443..7a62e0204 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -64,6 +64,7 @@ from kgforge.core.wrappings.paths import Filter, create_filters_from_dict from kgforge.specializations.mappers.dictionaries import DictionaryMapper from kgforge.specializations.mappings.dictionaries import DictionaryMapping +from kgforge.specializations.stores.nexus.http_helpers import files_create from kgforge.specializations.stores.nexus.service import ( BatchAction, Service, @@ -258,6 +259,7 @@ def _upload_one(self, path: Path, content_type: str) -> Dict: } response = requests.post(self.service.url_files, headers=headers, files=file_obj) response.raise_for_status() + except requests.HTTPError as e: raise UploadingError(_error_message(e)) from e diff --git a/kgforge/specializations/stores/nexus/http_helpers.py b/kgforge/specializations/stores/nexus/http_helpers.py new file mode 100644 index 000000000..fe5a4acf7 --- /dev/null +++ b/kgforge/specializations/stores/nexus/http_helpers.py @@ -0,0 +1,300 @@ +# +# This code was taken from https://github.com/BlueBrain/nexus-python-sdk + +import puremagic +import json +import collections +import requests +from typing import Any, Dict, List, Optional, Tuple, Union, Type +from urllib.parse import quote_plus as url_encode + +SEGMENT = "files" +DEFAULT_MIME = "application/octet-stream" + +# to make sure the output response dictionary are always ordered like the response's json +decode_json_ordered = json.JSONDecoder(object_pairs_hook=collections.OrderedDict).decode + +# defines some parts of the header, to combine together +header_parts = { + "common": {"mode": "cors"}, + "json": {"Content-Type": "application/json"}, + "text": {"sendAs": "text", "Content-Type": "text/plain"}, + "sparql": {"Content-Type": "application/sparql-query"}, + "file": {}, +} + +# so that a get request can decide to retrieve JSON or binary +header_accept = { + "json": "application/ld+json, application/json", + "all": "*/*" +} + +default_type = "json" +header_parts["default"] = header_parts[default_type] + + +def _content_type(filepath: str, content_type: Optional[str]) -> str: + if content_type is None: + try: + guessed_content_type = puremagic.from_file(filepath, True) + except puremagic.main.PureError as e: + print(e) + print("using the default content type instead:", DEFAULT_MIME) + guessed_content_type = DEFAULT_MIME + return guessed_content_type + else: + return content_type + + +def files_create( + endpoint: Optional[str], + token: Optional[str], + org_label: str, project_label: str, filepath: str, storage_id: Optional[str] = None, + file_id: Optional[str] = None, filename: Optional[str] = None, content_type: Optional[str] = None +) -> Dict: + """ + Creates a file resource from a binary attachment using the POST method when the user does not provide + a file ID, PUT otherwise. + + :param endpoint: the endpoint base, mandatory is use_base is True, else it is not used + :param token: the authentication token + :param org_label: The label of the organization that the file belongs to + :param project_label: The label of the project that the file belongs to + :param filepath: path of the file to upload + :param storage_id: OPTIONAL The id of the storage backend where the file will be stored. + If not provided, the project's default storage is used. + :param file_id: OPTIONAL Will use this id to identify the file if provided. + If not provided, an ID will be generated. + :param filename: OPTIONAL Overrides the automatically detected filename + :param content_type: OPTIONAL Override the automatically detected content type + :return: A payload containing only the Nexus metadata for this updated file. + """ + + # the elements composing the query URL need to be URL-encoded + org_label = url_encode(org_label) + project_label = url_encode(project_label) + + path = [SEGMENT, org_label, project_label] + + if filename is None: + filename = filepath.split("/")[-1] + + file_obj = { + "file": (filename, open(filepath, "rb"), _content_type(filepath, content_type)) + } + + if file_id is None: + return http_post(environment=endpoint, token=token, path=path, body=file_obj, data_type="file", storage=storage_id) + else: + path.append(url_encode(file_id)) + return http_put(environment=endpoint, token=token, path=path, body=file_obj, data_type="file", storage=storage_id) + + +# TODO add docstring +def http_post(environment: Optional[str], token: Optional[str], path: Union[str, List[str]], body=None, data_type="default", use_base=False, **kwargs): + """ + Perform a POST request. + :param environment: the endpoint base, mandatory is use_base is True, else it is not used + :param token: the authentication token + :param path: complete URL if use_base is False or just the ending if use_base is True + :param body: OPTIONAL Things to send, can be a dictionary + :param data_type: OPTIONAL can be "json" or "text" (default: "default" = "json") + :param params: OPTIONAL provide some URL parameters (?foo=bar&hello=world) as a dictionary + :return: the dictionary that is equivalent to the json response + """ + header = prepare_header(token=token, type=data_type) + full_url = _full_url(environment, path, use_base) + + if data_type != "file": + body_data = prepare_body(body, data_type) + response = requests.post(full_url, headers=header, data=body_data, params=kwargs) + else: + response = requests.post(full_url, headers=header, files=body, params=kwargs) + + response.raise_for_status() + return decode_json_ordered(response.text) + + +def http_put(environment: Optional[str], token: Optional[str], path: Union[str, List[str]], body=None, data_type="default", use_base=False, **kwargs): + """ + Performs a PUT request + + :param path: complete URL if use_base si False or just the ending if use_base is True + :param body: OPTIONAL Things to send, can be a dictionary or a buffer + :param data_type: OPTIONAL can be "json" or "text" or "file" (default: "default" = "json") + :param use_base: OPTIONAL if True, the Nexus env provided by nexus.config.set_environment will + be prepended to path. (default: False) + + :param params: OPTIONAL provide some URL parameters (?foo=bar&hello=world) as a dictionary + :return: the dictionary that is equivalent to the json response + """ + header = prepare_header(token=token, type=data_type) + full_url = _full_url(environment, path, use_base) + + if data_type != "file": + body_data = prepare_body(body, data_type) + response = requests.put(full_url, headers=header, data=body_data, params=kwargs) + else: + response = requests.put(full_url, headers=header, files=body, params=kwargs) + + response.raise_for_status() + return decode_json_ordered(response.text) + + +def http_get( + environment: Optional[str], token: Optional[str], + path: Union[str, List[str]], stream=False, get_raw_response=False, use_base=False, + data_type="default", accept="json", **kwargs +): + """ + Wrapper to perform a GET request. + + :param environment: the endpoint base, mandatory is use_base is True, else it is not used + :param token: the authentication token + :param path: complete URL if use_base si False or just the ending if use_base is True + :param params: OPTIONAL provide some URL parameters (?foo=bar&hello=world) as a dictionary + :param use_base: OPTIONAL if True, the Nexus env provided by nexus.config.set_environment will + be prepended to path. (default: False) + :param get_raw_response: OPTIONAL If True, the object provided by requests.get will be directly returned as is + (convenient when getting a binary file). If False, a dictionary representation of the response will be returned + (default: False) + :param stream: OPTIONAL True if GETting a file (default: False) + :return: if get_raw_response is True, returns the request.get object. If get_raw_response is False, return the + dictionary that is equivalent to the json response + """ + header = prepare_header(token=token, type=data_type, accept=accept) + full_url = _full_url(environment=environment, path=path, use_base=use_base) + params = kwargs.pop("params", None) + if params: + response = requests.get(full_url, headers=header, stream=stream, params=params, **kwargs) + else: + response = requests.get(full_url, headers=header, stream=stream, params=kwargs) + response.raise_for_status() + + if get_raw_response: + return response + else: + return decode_json_ordered(response.text) + + +def prepare_header(token: Optional[str], type="default", accept="json"): + """ + Prepare the header of the HTTP request by fetching the token from the config + and few other things. + + :param type: string. Must be one of the keys in the above declared dict header_parts + :param accept: OPTIONAL if "json", the answer will be JSON, if "all" it will be something else if the + request can send something else (e.g. binary) + + """ + header = {**header_parts["common"], **header_parts[type]} + + if accept in header_accept: + header["Accept"] = header_accept[accept] + + if token: + header["Authorization"] = "Bearer " + token + + return header + + +# Internal helpers +def _full_url(environment: str, path: Union[str, List[str]], use_base: bool) -> str: + # 'use_base' is temporary for compatibility with previous code sections. + if use_base: + return environment + path + + if isinstance(path, str): + return path + elif isinstance(path, list): + url = [environment] + path + return "/".join(url) + else: + raise TypeError("Expecting a string or a list!") + + +def prepare_body(data, type="default"): + """ + Prepare the body of the HTTP request + + :param data: + :param type: + :return: + """ + if type == "default": + type = default_type + + if type == "json": + body = json.dumps(data, ensure_ascii=True) + else: + body = data + + if data is None: + body = None + + return body + + +def project_fetch( + endpoint: Optional[str], + token: Optional[str], + org_label: str, project_label: str, rev=None +): + """ + Fetch a project and all its details. + Note: This does not give the list of resources. To get that, use the `resource` package. + + :param endpoint: the endpoint base, mandatory is use_base is True, else it is not used + :param token: the authentication token + :param org_label: The label of the organization that contains the project to be fetched + :param project_label: label of a the project to fetch + :param rev: OPTIONAL The specific revision of the wanted project. If not provided, will get the last. + :return: All the details of this project, as a dictionary + """ + + org_label = url_encode(org_label) + project_label = url_encode(project_label) + path = "/projects/" + org_label + "/" + project_label + + if rev is not None: + path = path + "?rev=" + str(rev) + + return http_get(environment=endpoint, token=token, path=path, use_base=True) + + +def views_fetch( + endpoint: Optional[str], + token: Optional[str], + org_label, project_label, view_id, rev=None, tag=None +): + """ + Fetches a distant view and returns the payload as a dictionary. + In case of error, an exception is thrown. + + :param endpoint: the endpoint base, mandatory is use_base is True, else it is not used + :param token: the authentication token + :param org_label: The label of the organization that the view belongs to + :param project_label: The label of the project that the view belongs to + :param view_id: id of the view + :param rev: OPTIONAL fetches a specific revision of a view (default: None, fetches the last) + :param tag: OPTIONAL fetches the view version that has a specific tag (default: None) + :return: Payload of the whole view as a dictionary + """ + + if rev is not None and tag is not None: + raise Exception("The arguments rev and tag are mutually exclusive. One or the other must be chosen.") + + # the element composing the query URL need to be URL-encoded + org_label = url_encode(org_label) + project_label = url_encode(project_label) + view_id = url_encode(view_id) + + path = "/views/" + org_label + "/" + project_label + "/" + view_id + + if rev is not None: + path = path + "?rev=" + str(rev) + + if tag is not None: + path = path + "?tag=" + str(tag) + + return http_get(environment=endpoint, token=token, path=path, use_base=True) diff --git a/kgforge/specializations/stores/nexus/service.py b/kgforge/specializations/stores/nexus/service.py index 1d20dec41..f8fae7233 100644 --- a/kgforge/specializations/stores/nexus/service.py +++ b/kgforge/specializations/stores/nexus/service.py @@ -24,7 +24,6 @@ from urllib.parse import quote_plus import nest_asyncio -import nexussdk as nexus import requests from aiohttp import ClientSession, hdrs from requests import HTTPError @@ -46,7 +45,9 @@ as_jsonld, recursive_resolve, ) +import kgforge from kgforge.core.wrappings.dict import wrap_dict +from kgforge.specializations.stores.nexus.http_helpers import views_fetch class BatchAction(Enum): @@ -104,7 +105,6 @@ def __init__( files_download_config: Dict, **params, ): - nexus.config.set_environment(endpoint) self.endpoint = endpoint self.organisation = org self.project = prj @@ -170,13 +170,15 @@ def __init__( self.headers_upload = {"Accept": files_upload_config.pop("Accept")} self.headers_download = {"Accept": files_download_config.pop("Accept")} + self.token = token + if token is not None: - nexus.config.set_token(token) self.headers["Authorization"] = "Bearer " + token self.headers_sparql["Authorization"] = "Bearer " + token self.headers_elastic["Authorization"] = "Bearer " + token self.headers_upload["Authorization"] = "Bearer " + token self.headers_download["Authorization"] = "Bearer " + token + self.context = Context(self.get_project_context()) self.url_files = Service.make_endpoint(self.endpoint, "files", org, prj) @@ -224,7 +226,9 @@ def __init__( } self.elastic_endpoint["view"] = LazyAction( - nexus.views.fetch, + views_fetch, + self.endpoint, + self.token, quote_plus(org), quote_plus(prj), ( @@ -287,7 +291,7 @@ def make_query_endpoint_self(self, view: str, endpoint_type: str): ) def get_project_context(self) -> Dict: - project_data = nexus.projects.fetch(self.organisation, self.project) + project_data = kgforge.specializations.stores.nexus.http_helpers.project_fetch(endpoint=self.endpoint, token=self.token, org_label=self.organisation, project_label=self.project) context = {"@base": project_data["base"], "@vocab": project_data["vocab"]} for mapping in project_data["apiMappings"]: context[mapping["prefix"]] = mapping["namespace"] diff --git a/setup.py b/setup.py index 611d2176d..3446e1bb2 100644 --- a/setup.py +++ b/setup.py @@ -41,7 +41,7 @@ "hjson", "pyyaml", "pandas", - "nexus-sdk", + "puremagic", "aiohttp", "rdflib==7.0.0", "pyLD", diff --git a/tests/specializations/stores/test_bluebrain_nexus.py b/tests/specializations/stores/test_bluebrain_nexus.py index d68b9e941..bf4881e75 100644 --- a/tests/specializations/stores/test_bluebrain_nexus.py +++ b/tests/specializations/stores/test_bluebrain_nexus.py @@ -19,10 +19,10 @@ from uuid import uuid4 from contextlib import nullcontext as does_not_raise -import nexussdk import pytest from typing import Callable, Union, List + from kgforge.core.commons.files import load_yaml_from_file from kgforge.core.resource import Resource from kgforge.core.archetypes.store import Store @@ -142,9 +142,8 @@ def store_config(production_configuration): @pytest.fixture -@mock.patch("nexussdk.projects.fetch", return_value=NEXUS_PROJECT_CONTEXT) -@mock.patch("nexussdk.resources.fetch", side_effect=nexussdk.HTTPError("404")) -def nexus_store(context_project_patch, metadata_context_patch, store_config): +@mock.patch("kgforge.specializations.stores.nexus.http_helpers.project_fetch", return_value=NEXUS_PROJECT_CONTEXT) +def nexus_store(context_project_patch, store_config): store_config_cp = copy.deepcopy(store_config) store_config_cp["endpoint"] = NEXUS diff --git a/utils.py b/utils.py index d1375d3b8..94692c823 100644 --- a/utils.py +++ b/utils.py @@ -12,16 +12,14 @@ # You should have received a copy of the GNU Lesser General Public License # along with Blue Brain Nexus Forge. If not, see . -import nexussdk as nxs from urllib.parse import quote_plus import os -TOKEN = "" -base_prod_v1= "https://bbp.epfl.ch/nexus/v1" +from kgforge.specializations.stores.nexus.http_helpers import project_fetch +TOKEN = "" +base_prod_v1 = "https://bbp.epfl.ch/nexus/v1" -nxs.config.set_environment(base_prod_v1) -nxs.config.set_token(TOKEN) """ This is a temporary uri rewriter to cope with the fact that some BlueBrainNexus users might have copied and stored outside BlueBrainNexus some _self urls of resources @@ -39,41 +37,43 @@ This returns for example: https://bbp.epfl.ch/nexus/v1/files/bbp/mmb-point-neuron-framework-model/https%3A%2F%2Fbbp.epfl.ch%2Fneurosciencegraph%2Fdata%2F79b51b75-81e2-4b2f-98fc-666130512cea """ + + def uri_formatter_using_previous_project_config(nxs, uri, org, project): - # Retrieve current project description - current_project_description = nxs.projects.fetch(org,project) - current_project_description = dict(current_project_description) - #current_base = current_project_description["base"] - #current_vocab = current_project_description["vocab"] - current_project_revision = current_project_description['_rev'] + # Retrieve current project description + current_project_description = nxs.projects.fetch(org, project) + current_project_description = dict(current_project_description) + # current_base = current_project_description["base"] + # current_vocab = current_project_description["vocab"] + current_project_revision = current_project_description['_rev'] - if current_project_revision <= 1: - raise Exception("The targeted project {org}/{project} does not have a previous revision. It's config was never changed.") + if current_project_revision <= 1: + raise Exception(f"The targeted project {org}/{project} does not have a previous revision. It's config was never changed.") - # Retrieve previous project description - previous_project_revision = current_project_revision - 1 - previous_project_description = nxs.projects.fetch(org,project, rev=previous_project_revision) - previous_project_description = dict(previous_project_description) - previous_base = previous_project_description["base"] - #previous_vocab = previous_project_description["vocab"] - previous_project_revision = previous_project_description['_rev'] + # Retrieve previous project description + previous_project_revision = current_project_revision - 1 + previous_project_description = project_fetch(endpoint=base_prod_v1, token=TOKEN, org_label=org, project_label=project, rev=previous_project_revision) + previous_project_description = dict(previous_project_description) + previous_base = previous_project_description["base"] + # previous_vocab = previous_project_description["vocab"] + previous_project_revision = previous_project_description['_rev'] - uri_parts = uri.split("/") - uri_last_path = uri_parts[-1] - uri_last_path = uri_last_path.split("?") # in case ? params are in the url - if len(uri_last_path) > 1 : - uri_last_path = uri_last_path[-2] - else: - uri_last_path = uri_last_path[-1] - expanded_uri_last_path = previous_base+uri_last_path - formatted_uri_parts= uri.replace(uri_last_path, quote_plus(expanded_uri_last_path)) - formatter_uri = "".join(formatted_uri_parts) - return formatter_uri + uri_parts = uri.split("/") + uri_last_path = uri_parts[-1] + uri_last_path = uri_last_path.split("?") # in case ? params are in the url + if len(uri_last_path) > 1: + uri_last_path = uri_last_path[-2] + else: + uri_last_path = uri_last_path[-1] + expanded_uri_last_path = previous_base + uri_last_path + formatted_uri_parts = uri.replace(uri_last_path, quote_plus(expanded_uri_last_path)) + formatter_uri = "".join(formatted_uri_parts) + return formatter_uri def full_path_relative_to_root(path: str): - """ + """ Provided a path relative to the root of the repository, it is transformed into an absolute path so that it will be independent of what the working directory is """ - return os.path.join(os.path.dirname(os.path.realpath(__file__)), path) + return os.path.join(os.path.dirname(os.path.realpath(__file__)), path) From c19838944ee3844e6505c4037275fd4214e0b36a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristina=20E=2E=20Gonz=C3=A1lez-Espinoza?= Date: Fri, 14 Jun 2024 11:26:04 +0200 Subject: [PATCH 39/49] Fix org and project metadata (#409) --- kgforge/specializations/stores/bluebrain_nexus.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index 7a62e0204..cd34043d6 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -590,7 +590,8 @@ def _prepare_download_one( ) -> Tuple[str, str]: if cross_bucket: if store_metadata is not None: - org, project = store_metadata._project.split("/") + project = store_metadata._project.split("/")[-1] + org = store_metadata._project.split("/")[-2] else: raise ValueError( f"Downloading non registered file is not allowed when cross_bucket is set to True" From 559e3bdd0848b69039f3b1970cc5a1673112a0e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mohameth=20Fran=C3=A7ois=20SY?= Date: Tue, 18 Jun 2024 16:44:44 +0200 Subject: [PATCH 40/49] Added v0.8.2 release notes (#410) --- docs/source/releases/release-notes.rst | 203 +++++-------------------- 1 file changed, 39 insertions(+), 164 deletions(-) diff --git a/docs/source/releases/release-notes.rst b/docs/source/releases/release-notes.rst index 3fcc6ef8b..07840e030 100644 --- a/docs/source/releases/release-notes.rst +++ b/docs/source/releases/release-notes.rst @@ -2,9 +2,7 @@ Release Notes ============= -This release introduces new features and enhancements to Nexus Forge while fixing a couple of bugs. - -New Features +Enhancements ============ Resolving @@ -12,196 +10,73 @@ Resolving |Binder_Resolving| and |Binder_Resolving_UseCase| to try. - -* It is now possible to configure a property path filter for a SPARQL based Resolver (`OntologyResolver` and `AgentResolver`) target to better narrow down data to resolve to within a given bucket `#290 `__, `#312 `__ . - This allows for example a user to target a specific ontology to resolve a string from. Here is the complete configuration of a Resolver: - - .. code-block:: python - - Resolvers: - : - - resolver:
      - origin: <'directory', 'web_service', or 'store'> - source: - targets: - - identifier: - bucket: - filters: - - path: - - value: - searchendpoints: - sparql: - endpoint: - result_resource_mapping: - endpoint: - token: - -An example of configuration for an OntologyResolver is: - -.. code-block:: python - - config = """ - Resolvers: - ontology: - - resolver: OntologyResolver - origin: store - source: BlueBrainNexus - targets: - - identifier: terms - bucket: neurosciencegraph/datamodels - - identifier: CellType - bucket: neurosciencegraph/datamodels - filters: - - path: subClassOf*.id - value: BrainCellType - - identifier: BrainRegion - bucket: neurosciencegraph/datamodels - filters: - - path: subClassOf*.id - value: BrainRegion - - identifier: Species - bucket: neurosciencegraph/datamodels - filters: - - path: subClassOf*.id - value: Species - searchendpoints: - sparql: - endpoint: "https://bluebrain.github.io/nexus/vocabulary/defaultSparqlIndex" - result_resource_mapping: https://raw.githubusercontent.com/BlueBrain/nexus-forge/master/examples/configurations/nexus-resolver/term-to-resource-mapping.hjson - - """ - forge.resolve(text="Chapter", scope="schemaorg_CreativeWork", target="CreativeWork", strategy=ResolvingStrategy.EXACT_MATCH) - -A specific configured target can be specified as usual when resolving: - -.. code-block:: python - - # forge.resolvers() lists configured resolvers - forge.resolve(text="MC", scope="ontology", target="CellType", strategy=ResolvingStrategy.EXACT_MATCH) - - -Enhancements -============ - -Resource --------- - -|Binder_Resource| to try the enhancements. - -* Added methods to get a Resource identifier (`Resource.has_identifier()` will look for `id` and `@id`) or type (`Resource.has_type()` will lok for `type` or `@type`) `#265 `__ , `#318 `__. - +* Enabled resolver mapping files to contain rules calling a forge method `#323 `__ (issue `#316 `__) +* More properties (e.g. altLabel, definition, isPartOf, ...) are retrieved when resolving an ontology term (`#337 `__) +* `alternateName` property can be used to resolve agent in AgentResolver `#404 `__ +* `OntologyResolver`: Added an ontology resolver target 'Strain' `#405 `__ Querying -------- |Binder_Querying| to try the enhancements. -* Added more SPARQL clauses (such as `optional`, `as` or `describe`) to ignore when rewriting (using `Store.rewrite_sparql()`) a SPARQL query `#288 `__, `#292 `__, `#297 `__. -* Added support for specifying a content-type when downloading data `#265 `__ (issue `#251 `__). -* Updated SPARQL query statement builder to consider the values of resource properties `@id` and `@type` as URIs (so that the values get correctly rewritten as follows: ``) when used with the `NOT_EQUAL` search operator `#265 `__. -* Introduced `core/commons/sparql_query_builder.SPARQLQueryBuilder` for building SPARQL select query statements and filters `#290 `__. -* `BlueBrainNexus` store: added resource retrieval by _self value (`Resource._store_metadata._self`) in addition to `Resource.id` `#271 `__. -* Added support for chaining multiple json properties using `/` as keys when calling searching using the filter dict syntax `#305 `__. - -.. code-block:: python - - # Filter by type using a dictionary. affiliation and id are chained as a single json key using '/'. - # This syntax is equivalent to {"type":"Person", "affiliation": {"id":"https://www.grid.ac/institutes/grid.5333.6"}} - - filters = {"type":"Person", "affiliation/id": "https://www.grid.ac/institutes/grid.5333.6"} - forge.search(filters) - -* Added `ElasticSearch Terms `__ query support when filter values are provided as a list and when ElasticSearch is used as a search endpoint `#306 `__. - -.. code-block:: python - - # Filter by type using a dictionary - filters = {"type":"Person", "affiliation/id": ["https://www.grid.ac/institutes/grid.5333.6","https://ror.org/02mrd0686"]} - forge.search(filters, search_endpoint="elastic") - -* Set "distribution.contentUrl" as default resource json property path to follow when collecting downloadable file urls. Set the current folder as the default download path `#265 `__. - - -.. code-block:: python - - # By default and when files downloads are described as distributions (https://nexus-forge.readthedocs.io/en/latest/interaction.html#dataset), - # this release allows a client to move from: - - forge.download(Resource, follow="distribution.contentUrl", path=".") - Dataset.download(forge, follow="distribution.contentUrl", path=".") +* `BlueBrainNexus` store: An `elasticsearch or sparql view id `__ can be provided using a `view` argument when calling `forge.sparql`, `forge.elastic` or `forge.search` (`#373 `__) + If a view id is provided, only data accessible from that view will be searched and retrieved. +* `forge.elastic` can now return results as list of dict instead of a list of `Resource` when `as_resource` is set to False `#382 `__ - # to simply: - forge.download(Resource) - Dataset.download() +Forge +----- -Formattting ------------ +|Binder_JSONLD| to try the enhancements. -|Binder_Formatting| to try the enhancements. +* Bumped JSON-LD context version from 1.0 to 1.1 to enable expanding a JSON-LD prefix mapping ending with a non IRI-delimiting character such as '_' or any character not present in `rdflib.plugins.shared.jsonld.context.URI_GEN_DELIMS `__ `#387 `__ (issue `#386 `__) + See also `RDFLib/rdflib#2606 `__ -* Updated forge.format() to know support URI rewriting. The specifiic rewriting logic is delegated to the configured Store. - Two formatters are now supported: - - - Formatter.STR: corresponds to configured (in the forge config file) str formatter - - - Formatter.URI_REWRITER: URI rewriter. Using BlueBrainNexus store, this formatter will build a fully expanded _self rom a resource or file id - -.. code-block:: python - - forge.format(uri=resource.id, formatter=Formatter.URI_REWRITER, is_file=False, encoding=None) - - - -Bug Fixes -========= Modeling -------- -* Bumped `rdflib` from `>=6.0.0` to `==6.2.0` to fix broken loading of JSON-LD context when using `core.commons.context.Context`. The error originated from an upstream rdflib bug (see rdflib issue `#2303 `__), `#295 `__ . +|Binder_Modeling| to try the enhancements. -Querying --------- +* `RdfModel`: Added support for importing ontologies from SHACL schemas using `owl:imports`. Added support for inference. Use `forge.validate(resource, inference="inference_value", type_='AType')` with `inference_value` as in `pyshacl `__. `inference_value="rdfs"` is enough to extend the resource to validate with the transitive closures of type subClassOf and/or property subPropertyOf relations. + Validation will fail when a type not in the resource to validate is provided as value of the `type_` argument unless inference is enabled (with `inference='rdfs'` for example) and the resource type is a subClassOf of the value of `type_` `#396 `__ (issue `#369 `__) -* BlueBrainNexus store: fixed failing resource download when the downloadble URL is a _self `#283 `__ (issue `#282 `__) . -* BlueBrainNexus store: fixed download of a list of resources which were failing if at least one resource in the list did not have the requested content-type. Now only resources in the list with the requested content-type are downloaded `#283 `__ . -Resolving ---------- +Dataset +------- -* Added `Graph` SPARQL clause to the query built by OntolgyResolver and AgentResolver to avoid retrieving an agent with more than one values for annotation properties (i.e name, familyName or givenName, label, ...) `#310 `__ (issue `#309 `__) +|Binder_Dataset| to try the enhancements. + +* Added `add_image` method to the `Dataset` class `#389 `__ (issue `#388 `__ ). This method will upload the image in the configured store and add an `image` property to the Dataset with the return dict as value made of at least the @id of the uploaded image. -Storing -------- -* Store.upload() was failing when a configured file-to-resource-mapping.hjson file was definining a transformation rule based on a forge method because of an incorrect instanciation of a Mapper object (a None Forge object was provided) was provided `#315 `__ . Changelog ========= -`Full changelog `__ +`Full changelog `__ .. |Binder_Resolving| image:: https://mybinder.org/badge_logo.svg - :alt: Binder_Querying - :target: https://mybinder.org/v2/gh/BlueBrain/nexus-forge/v0.8.1?filepath=examples%2Fnotebooks%2Fgetting-started%2F09%20-%20Resolving.ipynb - -.. |Binder_Storing| image:: https://mybinder.org/badge_logo.svg - :alt: Binder_Storing - :target: https://mybinder.org/v2/gh/BlueBrain/nexus-forge/v0.8.1?filepath=examples%2Fnotebooks%2Fgetting-started%2F03%20-%20Storing.ipynb - -.. |Binder_Formatting| image:: https://mybinder.org/badge_logo.svg - :alt: Binder_Formatting - :target: https://mybinder.org/v2/gh/BlueBrain/nexus-forge/v0.8.1?filepath=examples%2Fnotebooks%2Fgetting-started%2F08%20-%20Formatting.ipynb + :alt: Binder_Resolving + :target: https://mybinder.org/v2/gh/BlueBrain/nexus-forge/v0.8.2?filepath=examples%2Fnotebooks%2Fgetting-started%2F09%20-%20Resolving.ipynb .. |Binder_Querying| image:: https://mybinder.org/badge_logo.svg :alt: Binder_Querying - :target: https://mybinder.org/v2/gh/BlueBrain/nexus-forge/v0.8.1?filepath=examples%2Fnotebooks%2Fgetting-started%2F04%20-%20Querying.ipynb - -.. |Binder_Resource| image:: https://mybinder.org/badge_logo.svg - :alt: Binder_Resource - :target: https://mybinder.org/v2/gh/BlueBrain/nexus-forge/v0.8.1?filepath=examples%2Fnotebooks%2Fgetting-started%2F01%20-%20Resources.ipynb + :target: https://mybinder.org/v2/gh/BlueBrain/nexus-forge/v0.8.2?filepath=examples%2Fnotebooks%2Fgetting-started%2F04%20-%20Querying.ipynb .. |Binder_Resolving_UseCase| image:: https://mybinder.org/badge_logo.svg - :alt: Binder_Resource - :target: https://mybinder.org/v2/gh/BlueBrain/nexus-forge/v0.8.1?filepath=examples%2Fnotebooks%2Fuse-cases%2FResolvingStrategies.ipynb + :alt: Binder_Resolving_UseCase + :target: https://mybinder.org/v2/gh/BlueBrain/nexus-forge/v0.8.2?filepath=examples%2Fnotebooks%2Fuse-cases%2FResolvingStrategies.ipynb + +.. |Binder_Modeling| image:: https://mybinder.org/badge_logo.svg + :alt: Binder_Modeling + :target: https://mybinder.org/v2/gh/BlueBrain/nexus-forge/v0.8.2?filepath=examples%2Fnotebooks%2Fgetting-started%2F11%20-%20Modeling.ipynb + +.. |Binder_Dataset| image:: https://mybinder.org/badge_logo.svg + :alt: Binder_Dataset + :target: https://mybinder.org/v2/gh/BlueBrain/nexus-forge/v0.8.2?filepath=examples%2Fnotebooks%2Fgetting-started%2F02%20-%20Datasets.ipynb + +.. |Binder_JSONLD| image:: https://mybinder.org/badge_logo.svg + :alt: Binder_JSONLD + :target: https://mybinder.org/v2/gh/BlueBrain/nexus-forge/v0.8.2?filepath=examples%2Fnotebooks%2Fgetting-started%2F13%20-%20JSON-LD%20IO.ipynb From aa0cb9a7ead7444c558f99fdb46f4d9749c89ebe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mohameth=20Fran=C3=A7ois=20SY?= Date: Tue, 18 Jun 2024 17:07:04 +0200 Subject: [PATCH 41/49] Fix readthedocs yml connfig error: Value build not found (#411) --- .readthedocs.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.readthedocs.yml b/.readthedocs.yml index 412d3ff08..2086e3922 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -8,9 +8,12 @@ version: 2 sphinx: fail_on_warning: true -# Optionally set the version of Python and requirements required to build your docs +build: + os: ubuntu-22.04 + tools: + python: "3.8" + python: - version: "3.8" install: - method: pip path: . From 50130ecf0c0ce3ad87694806756e60096248b797 Mon Sep 17 00:00:00 2001 From: Sarah Date: Wed, 19 Jun 2024 14:12:10 +0200 Subject: [PATCH 42/49] Fixed building a SPARQL query from a Filter with __ne__ operator and Literal value (#397) --- kgforge/core/commons/sparql_query_builder.py | 21 +++++++------------ .../stores/test_bluebrain_nexus.py | 7 ++++++- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/kgforge/core/commons/sparql_query_builder.py b/kgforge/core/commons/sparql_query_builder.py index 626b2449e..2c9ff7979 100644 --- a/kgforge/core/commons/sparql_query_builder.py +++ b/kgforge/core/commons/sparql_query_builder.py @@ -169,20 +169,15 @@ def build( value = format_type[value_type]( parsed_value if parsed_value else f.value ) - if value_type is CategoryDataType.LITERAL: - if f.operator not in ["__eq__", "__ne__"]: - raise NotImplementedError( - "supported operators are '==' and '!=' when filtering with a str." - ) - statements.append(f"{property_path} ?v{index}") - sparql_filters.append( - f"FILTER(?v{index} = {_box_value_as_full_iri(value)})" - ) - else: - statements.append(f"{property_path} ?v{index}") - sparql_filters.append( - f"FILTER(?v{index} {sparql_operator_map[f.operator]} {_box_value_as_full_iri(value)})" + if value_type is CategoryDataType.LITERAL and f.operator not in ["__eq__", "__ne__"]: + raise NotImplementedError( + "supported operators are '==' and '!=' when filtering with a str." ) + + statements.append(f"{property_path} ?v{index}") + sparql_filters.append( + f"FILTER(?v{index} {sparql_operator_map[f.operator]} {_box_value_as_full_iri(value)})" + ) except NotImplementedError as nie: raise ValueError( f"Operator '{sparql_operator_map[f.operator]}' " diff --git a/tests/specializations/stores/test_bluebrain_nexus.py b/tests/specializations/stores/test_bluebrain_nexus.py index bf4881e75..a4bcdab5f 100644 --- a/tests/specializations/stores/test_bluebrain_nexus.py +++ b/tests/specializations/stores/test_bluebrain_nexus.py @@ -443,7 +443,12 @@ def context(self): pytest.param( (Filter(["agent", "name"], "__eq__", "Allen Institute"),), (["agent/name ?v0"], ['FILTER(?v0 = "Allen Institute")']), - id="literal", + id="literal_eq", + ), + pytest.param( + (Filter(["agent", "name"], "__ne__", "Allen Institute"),), + (["agent/name ?v0"], ['FILTER(?v0 != "Allen Institute")']), + id="literal_ne", ), pytest.param( (Filter(["address", "postalCode"], "__lt__", 50070),), From 0b3b91f7de238079bb276ea27185be81bdb0f04e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristina=20E=2E=20Gonz=C3=A1lez-Espinoza?= Date: Wed, 19 Jun 2024 15:16:42 +0200 Subject: [PATCH 43/49] Store initialization configuration in forge._config method (#333) --- kgforge/core/forge.py | 7 ++++++- tests/core/test_forge.py | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/kgforge/core/forge.py b/kgforge/core/forge.py index 0cb241608..7fb05ee04 100644 --- a/kgforge/core/forge.py +++ b/kgforge/core/forge.py @@ -213,6 +213,9 @@ def __init__(self, configuration: Union[str, Dict], **kwargs) -> None: else: config = deepcopy(configuration) + # Store initial configuration + self._config = {"config": deepcopy(config), "kwargs": deepcopy(kwargs)} + # Debugging. self._debug = kwargs.pop("debug", False) @@ -352,7 +355,9 @@ def validate( RDFS entailment rules (https://www.w3.org/TR/rdf-mt/). In this example 'owlrl' or 'rdfsowlrl' are also possible values while no inference will be performed with None . :return: None """ - self._model.validate(data, execute_actions_before, type_=type_, inference=inference) + self._model.validate( + data, execute_actions_before, type_=type_, inference=inference + ) # Resolving User Interface. diff --git a/tests/core/test_forge.py b/tests/core/test_forge.py index 794401213..f0f296083 100644 --- a/tests/core/test_forge.py +++ b/tests/core/test_forge.py @@ -28,6 +28,8 @@ class TestForgeInitialization: def test_initialization(self, config): forge = KnowledgeGraphForge(config) + assert forge._config['config'] == config + assert forge._config['kwargs'] == {} assert os.environ['PYSHACL_USE_FULL_MIXIN'] == "True" assert type(forge._model).__name__ == MODEL assert type(forge._store).__name__ == STORE From 7e3844b54c6ac952e19ee4601518ef1f1e4451da Mon Sep 17 00:00:00 2001 From: Sarah Date: Thu, 20 Jun 2024 17:33:37 +0200 Subject: [PATCH 44/49] Refactor batch request mechanism (#383) * Added batched retrieval --- .../use-cases/BBP KG Forge retrieval.ipynb | 199 ++++++- kgforge/core/commons/execution.py | 7 +- kgforge/core/forge.py | 9 +- .../specializations/stores/bluebrain_nexus.py | 552 +++++++++++------- .../stores/nexus/batch_request_handler.py | 110 ++++ .../stores/nexus/prepare_methods.py | 188 ++++++ .../specializations/stores/nexus/service.py | 426 +++----------- setup.py | 1 + .../stores/test_bluebrain_nexus.py | 16 +- 9 files changed, 904 insertions(+), 604 deletions(-) create mode 100644 kgforge/specializations/stores/nexus/batch_request_handler.py create mode 100644 kgforge/specializations/stores/nexus/prepare_methods.py diff --git a/examples/notebooks/use-cases/BBP KG Forge retrieval.ipynb b/examples/notebooks/use-cases/BBP KG Forge retrieval.ipynb index e7018bea5..0e60725a8 100644 --- a/examples/notebooks/use-cases/BBP KG Forge retrieval.ipynb +++ b/examples/notebooks/use-cases/BBP KG Forge retrieval.ipynb @@ -2,17 +2,17 @@ "cells": [ { "cell_type": "code", - "execution_count": 1, + "execution_count": 28, "id": "2c4aec45-da10-4b11-8469-b0e62f8a0c31", "metadata": {}, "outputs": [], "source": [ - "from kgforge.core import KnowledgeGraphForge" + "from kgforge.core import KnowledgeGraphForge, Resource" ] }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 29, "id": "0ac8879d-b05b-482c-94b6-e46437291854", "metadata": {}, "outputs": [ @@ -31,7 +31,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 30, "id": "eb70f64b-7ca2-4c71-a725-87cfd7ce2e1d", "metadata": {}, "outputs": [], @@ -69,7 +69,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 31, "id": "826d1183-6898-4977-b7ee-9518e4095fef", "metadata": {}, "outputs": [ @@ -78,61 +78,77 @@ "output_type": "stream", "text": [ "Execution 0 using: id inside: same bucket - Cross bucket: True - Retrieve source: True\n", + "https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 1 using: self inside: same bucket - Cross bucket: True - Retrieve source: True\n", + "https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/https:%2F%2Fbbp.epfl.ch%2Fnexus%2Fv1%2Fresources%2Fdke%2Fkgforge%2F_%2F20fbc97a-fb26-43ff-8093-9136aab25dff\n", "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 2 using: id inside: other bucket - Cross bucket: True - Retrieve source: True\n", + "http://purl.obolibrary.org/obo/GO_0038048\n", "rev 3 https://bbp.neuroshapes.org http://purl.obolibrary.org/obo/GO_0038048\n", "______________________\n", "Execution 3 using: self inside: other bucket - Cross bucket: True - Retrieve source: True\n", + "https://bbp.epfl.ch/nexus/v1/resources/neurosciencegraph/datamodels/_/http:%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048\n", "rev 3 https://bbp.neuroshapes.org http://purl.obolibrary.org/obo/GO_0038048\n", "______________________\n", "Execution 4 using: id inside: same bucket - Cross bucket: False - Retrieve source: True\n", + "https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 5 using: self inside: same bucket - Cross bucket: False - Retrieve source: True\n", + "https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/https:%2F%2Fbbp.epfl.ch%2Fnexus%2Fv1%2Fresources%2Fdke%2Fkgforge%2F_%2F20fbc97a-fb26-43ff-8093-9136aab25dff\n", "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 6 using: id inside: other bucket - Cross bucket: False - Retrieve source: True\n", + "http://purl.obolibrary.org/obo/GO_0038048\n", " catch_http_error\n", - " RetrievalError: 404 Client Error: Not Found for url: https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048\n", + " RetrievalError: 404, message='Not Found', url=URL('https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/http:%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048')\n", "\n", "Not found\n", "______________________\n", "Execution 7 using: self inside: other bucket - Cross bucket: False - Retrieve source: True\n", - " retrieve\n", + "https://bbp.epfl.ch/nexus/v1/resources/neurosciencegraph/datamodels/_/http:%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048\n", + " _retrieve\n", " RetrievalError: Provided resource identifier https://bbp.epfl.ch/nexus/v1/resources/neurosciencegraph/datamodels/_/http:%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048 is not inside the current bucket, use cross_bucket=True to be able to retrieve it\n", "\n", "Not found\n", "______________________\n", "Execution 8 using: id inside: same bucket - Cross bucket: True - Retrieve source: False\n", + "https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 9 using: self inside: same bucket - Cross bucket: True - Retrieve source: False\n", + "https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/https:%2F%2Fbbp.epfl.ch%2Fnexus%2Fv1%2Fresources%2Fdke%2Fkgforge%2F_%2F20fbc97a-fb26-43ff-8093-9136aab25dff\n", "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 10 using: id inside: other bucket - Cross bucket: True - Retrieve source: False\n", + "http://purl.obolibrary.org/obo/GO_0038048\n", "rev 3 https://bbp.neuroshapes.org GO:0038048\n", "______________________\n", "Execution 11 using: self inside: other bucket - Cross bucket: True - Retrieve source: False\n", + "https://bbp.epfl.ch/nexus/v1/resources/neurosciencegraph/datamodels/_/http:%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048\n", "rev 3 https://bbp.neuroshapes.org GO:0038048\n", "______________________\n", "Execution 12 using: id inside: same bucket - Cross bucket: False - Retrieve source: False\n", + "https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 13 using: self inside: same bucket - Cross bucket: False - Retrieve source: False\n", + "https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/https:%2F%2Fbbp.epfl.ch%2Fnexus%2Fv1%2Fresources%2Fdke%2Fkgforge%2F_%2F20fbc97a-fb26-43ff-8093-9136aab25dff\n", "rev 3 https://bbp.neuroshapes.org https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff\n", "______________________\n", "Execution 14 using: id inside: other bucket - Cross bucket: False - Retrieve source: False\n", + "http://purl.obolibrary.org/obo/GO_0038048\n", " catch_http_error\n", - " RetrievalError: 404 Client Error: Not Found for url: https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048\n", + " RetrievalError: 404, message='Not Found', url=URL('https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/http:%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048')\n", "\n", "Not found\n", "______________________\n", "Execution 15 using: self inside: other bucket - Cross bucket: False - Retrieve source: False\n", - " retrieve\n", + "https://bbp.epfl.ch/nexus/v1/resources/neurosciencegraph/datamodels/_/http:%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048\n", + " _retrieve\n", " RetrievalError: Provided resource identifier https://bbp.epfl.ch/nexus/v1/resources/neurosciencegraph/datamodels/_/http:%2F%2Fpurl.obolibrary.org%2Fobo%2FGO_0038048 is not inside the current bucket, use cross_bucket=True to be able to retrieve it\n", "\n", "Not found\n", @@ -162,6 +178,7 @@ "\n", " print(f\"Execution {i}\", \" using: \", type_, \"inside: \", loc, \" - Cross bucket:\", cb, \" - Retrieve source:\", rs)\n", "\n", + " print(el)\n", " e = forge.retrieve(el, cross_bucket=cb, retrieve_source=rs)\n", "\n", " if not e:\n", @@ -171,6 +188,170 @@ " print(\"______________________\")\n", " i += 1\n" ] + }, + { + "cell_type": "markdown", + "id": "f1d89492-79a3-44c2-8304-4f40516c2832", + "metadata": {}, + "source": [ + "# Batch Retrieval" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "039cb6c5-12c3-45ec-9dad-100d64969e85", + "metadata": {}, + "outputs": [], + "source": [ + "import pstats\n", + "import cProfile\n", + "import json" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "id": "c28cdc68-895d-4aea-b56b-c1dff7d0168a", + "metadata": {}, + "outputs": [], + "source": [ + "entities = forge.search({\"type\": \"Entity\"})" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "id": "078e8978-b949-49e3-a4ae-6fe4ef0b15a1", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 5351677 function calls (5054656 primitive calls) in 1.886 seconds\n", + "\n", + " Random listing order was used\n", + " List reduced from 684 to 1 due to restriction <1>\n", + "\n", + " ncalls tottime percall cumtime percall filename:lineno(function)\n", + " 2 0.000 0.000 0.000 0.000 :1017(_handle_fromlist)\n", + "\n", + "\n", + "['https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/545eaa9a-be49-470f-b5bc-907fbee0cde6', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/9842b6d6-4536-4f27-b2eb-ac2f9363f3f4', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/75549784-55d3-4cec-8968-a00f2a07a2fd', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/a8722f9e-a8a4-499a-b64c-3856ebfd01a6', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/d0d38bab-5e01-4d8f-a98a-ccaca6f73b43', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/085d634e-50fd-4fde-9372-6535b9090178', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_0', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_1', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_2', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_4', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_5', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_6', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_7', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_8', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_9', 'https://bbp.epfl.ch/data/dke/kgforge/237312a3-ebaf-4f1c-8443-b2be237d42d1', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_18_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_87_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_46_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_67_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_75_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_65_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_56_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_60_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_70_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_15_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_92_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_64_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_84_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_33_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_90_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_78_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_38_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_81_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_97_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_42_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_39_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_29_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_62_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_9_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_63_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_72_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_89_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_76_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_91_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_1_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_21_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_6_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_4_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_51_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_82_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_79_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_44_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_83_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_19_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_85_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_12_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_27_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_32_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_98_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_7_3', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/5c835502-ed29-46ff-a07c-0913dbba6c70', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/69c7f853-4407-4e6f-a9b2-840c8c1c3ea7', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/17759807-5dbe-44c5-8f6e-ac6ef1ce1299', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/8701d132-2ded-480d-b366-07a007c99684', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/0acfd1e6-ebc6-4fe6-841d-fc8c02ac73c3', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/49ed1888-7a87-40bb-b1f3-cde4bf5f3fc4', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/9209b6b8-2b01-4fbd-a753-02eb1307ef9e', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/fd3f1395-d270-4079-81b0-d293407fcce0', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/914aa432-2fcc-4098-a8ec-5dada60149c3', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/fe20e514-b234-419b-9443-8a103208e00e', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/35296363-23cd-4157-8b64-122c83415d95', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/002d787f-f36e-43a7-b9a9-8bf5e94202c2', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/27832cd6-1b49-4db0-a6cc-058bbd2a04f2', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/627eda77-fb81-41ed-80b6-10d6257f1d89', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/4c1c40b7-89a2-4044-9614-e07a4bc9168d', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/94176355-b290-41a0-a2e6-e298bf3d0176', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/4a98e1d1-9bb6-4deb-98ec-0133dc342995', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/b429dee5-1c35-4c2c-b475-bd5a4639e1f4', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/d13c4b2d-3543-4e40-9479-21006f66e380', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/bfc627c4-5326-4f6b-8aed-27ecb87eb0e8', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/543faf75-fc3d-4a1a-9861-11788dae5657', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/376ecc74-68e1-4324-8498-500a2a086872', 'https://bbp.epfl.ch/data/dke/kgforge/8f664b12-ea33-4d2e-90a7-ca2ac3fea22f', 'https://bbp.epfl.ch/data/dke/kgforge/a5fadaa1-d06e-4f36-a5f1-72e8d1044257', 'https://bbp.epfl.ch/data/dke/kgforge/3ef8f85e-b22a-46a3-b485-79881799113b', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/b9cb9987-ea99-4bce-b6d8-54930214d418', 'https://bbp.epfl.ch/data/dke/kgforge/c8cf0388-1ab7-4e3a-8b58-6841caab4148', 'https://bbp.epfl.ch/data/dke/kgforge/b280ca27-ca81-4d70-8d10-cb8cdf143682', 'https://bbp.epfl.ch/data/dke/kgforge/af15bef9-3894-42e1-8a46-4f38640c40b9', 'https://bbp.epfl.ch/data/dke/kgforge/ea93f167-32b8-44e9-b3c3-a48869512da7', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/d69c348d-f471-4b04-b49b-54cd86e8143e', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/328e177e-60a5-4443-ad41-9164fa4c0e44', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/8a6bdd54-7fa0-4280-a8de-de5d067cc973', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/ea756a5a-5c64-4454-b3db-5218d370356d', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/710ea3db-871c-4bc1-89eb-88b1e63b9320', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/be207a5d-2558-4ccc-9b2b-68bde3c72729', None, 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff']\n", + "Errors\n", + "[None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, Action(error='RetrievalError', message=\"404, message='Not Found', url=URL('https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/:%2F%2FNCBITaxon:10090')\", operation='_retrieve_many', succeeded=False), None]\n" + ] + } + ], + "source": [ + "with cProfile.Profile() as pr:\n", + " test_1 = forge.retrieve([e.id for e in entities])\n", + " pstats.Stats(pr).print_stats(1)\n", + " print([r.get_identifier() if isinstance(r, Resource) else None for r in test_1])\n", + " print(\"Errors\")\n", + " print([r if not isinstance(r, Resource) else None for r in test_1])\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "id": "69823c02-96cf-4e1a-aecf-7ab6989bc3f4", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " catch_http_error\n", + " RetrievalError: 404, message='Not Found', url=URL('https://bbp.epfl.ch/nexus/v1/resolvers/dke/kgforge/_/:%2F%2FNCBITaxon:10090')\n", + "\n", + " 5364936 function calls (5083259 primitive calls) in 8.307 seconds\n", + "\n", + " Random listing order was used\n", + " List reduced from 694 to 1 due to restriction <1>\n", + "\n", + " ncalls tottime percall cumtime percall filename:lineno(function)\n", + " 2 0.000 0.000 0.000 0.000 :1017(_handle_fromlist)\n", + "\n", + "\n", + "['https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/545eaa9a-be49-470f-b5bc-907fbee0cde6', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/9842b6d6-4536-4f27-b2eb-ac2f9363f3f4', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/75549784-55d3-4cec-8968-a00f2a07a2fd', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/a8722f9e-a8a4-499a-b64c-3856ebfd01a6', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/d0d38bab-5e01-4d8f-a98a-ccaca6f73b43', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/085d634e-50fd-4fde-9372-6535b9090178', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_0', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_1', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_2', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_4', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_5', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_6', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_7', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_8', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/dummy_resource_9', 'https://bbp.epfl.ch/data/dke/kgforge/237312a3-ebaf-4f1c-8443-b2be237d42d1', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_18_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_87_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_46_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_67_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_75_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_65_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_56_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_60_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_70_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_15_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_92_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_64_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_84_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_33_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_90_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_78_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_38_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_81_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_97_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_42_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_39_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_29_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_62_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_9_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_63_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_72_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_89_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_76_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_91_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_1_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_21_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_6_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_4_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_51_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_82_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_79_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_44_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_83_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_19_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_85_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_12_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_27_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_32_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_98_3', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/test_resource_7_3', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/5c835502-ed29-46ff-a07c-0913dbba6c70', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/69c7f853-4407-4e6f-a9b2-840c8c1c3ea7', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/17759807-5dbe-44c5-8f6e-ac6ef1ce1299', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/8701d132-2ded-480d-b366-07a007c99684', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/0acfd1e6-ebc6-4fe6-841d-fc8c02ac73c3', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/49ed1888-7a87-40bb-b1f3-cde4bf5f3fc4', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/9209b6b8-2b01-4fbd-a753-02eb1307ef9e', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/fd3f1395-d270-4079-81b0-d293407fcce0', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/914aa432-2fcc-4098-a8ec-5dada60149c3', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/fe20e514-b234-419b-9443-8a103208e00e', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/35296363-23cd-4157-8b64-122c83415d95', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/002d787f-f36e-43a7-b9a9-8bf5e94202c2', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/27832cd6-1b49-4db0-a6cc-058bbd2a04f2', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/627eda77-fb81-41ed-80b6-10d6257f1d89', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/4c1c40b7-89a2-4044-9614-e07a4bc9168d', 'https://bbp.epfl.ch/neurosciencegraph/data/factsheets/94176355-b290-41a0-a2e6-e298bf3d0176', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/4a98e1d1-9bb6-4deb-98ec-0133dc342995', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/b429dee5-1c35-4c2c-b475-bd5a4639e1f4', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/d13c4b2d-3543-4e40-9479-21006f66e380', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/bfc627c4-5326-4f6b-8aed-27ecb87eb0e8', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/543faf75-fc3d-4a1a-9861-11788dae5657', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/376ecc74-68e1-4324-8498-500a2a086872', 'https://bbp.epfl.ch/data/dke/kgforge/8f664b12-ea33-4d2e-90a7-ca2ac3fea22f', 'https://bbp.epfl.ch/data/dke/kgforge/a5fadaa1-d06e-4f36-a5f1-72e8d1044257', 'https://bbp.epfl.ch/data/dke/kgforge/3ef8f85e-b22a-46a3-b485-79881799113b', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/b9cb9987-ea99-4bce-b6d8-54930214d418', 'https://bbp.epfl.ch/data/dke/kgforge/c8cf0388-1ab7-4e3a-8b58-6841caab4148', 'https://bbp.epfl.ch/data/dke/kgforge/b280ca27-ca81-4d70-8d10-cb8cdf143682', 'https://bbp.epfl.ch/data/dke/kgforge/af15bef9-3894-42e1-8a46-4f38640c40b9', 'https://bbp.epfl.ch/data/dke/kgforge/ea93f167-32b8-44e9-b3c3-a48869512da7', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/d69c348d-f471-4b04-b49b-54cd86e8143e', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/328e177e-60a5-4443-ad41-9164fa4c0e44', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/8a6bdd54-7fa0-4280-a8de-de5d067cc973', 'https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/ea756a5a-5c64-4454-b3db-5218d370356d', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/710ea3db-871c-4bc1-89eb-88b1e63b9320', 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/be207a5d-2558-4ccc-9b2b-68bde3c72729', None, 'https://bbp.epfl.ch/nexus/v1/resources/dke/kgforge/_/20fbc97a-fb26-43ff-8093-9136aab25dff']\n" + ] + } + ], + "source": [ + "with cProfile.Profile() as pr:\n", + " test_2 = [forge.retrieve(e.id, cross_bucket=True) for e in entities]\n", + " pstats.Stats(pr).print_stats(1)\n", + " print([r.get_identifier() if r else None for r in test_2])" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "id": "8d9fd6b5-eaee-4251-ba01-2d67434988ea", + "metadata": {}, + "outputs": [], + "source": [ + "assert all(\n", + " json.dumps(forge.as_json(e)) == json.dumps(forge.as_json(e2)) \n", + " for e, e2 in zip(test_1, test_2)\n", + " if e is not None and e2 is not None\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "ca49f603-5740-4954-b8c2-6df1c4be4325", + "metadata": {}, + "source": [ + "## Error handling" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "id": "7546fc67-0ebb-4a9f-b6ee-ca3818736880", + "metadata": {}, + "outputs": [], + "source": [ + "ids = [e.id for e in entities[:2]] + [\"unknown_id\"]" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "id": "ad26dbff-1e82-4105-9344-301b73c4db7f", + "metadata": {}, + "outputs": [], + "source": [ + "test_3 = forge.retrieve(ids)" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "id": "6746f7fa-8f45-416e-b153-58ba4b846c88", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Succeeded: True - Identifier: https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/545eaa9a-be49-470f-b5bc-907fbee0cde6\n", + "Succeeded: True - Identifier: https://bbp.epfl.ch/neurosciencegraph/data/neuronmorphologies/9842b6d6-4536-4f27-b2eb-ac2f9363f3f4\n", + "Succeeded: False\n" + ] + } + ], + "source": [ + "for r in test_3:\n", + " if isinstance(r, Resource):\n", + " print(\"Succeeded: \", r._last_action.succeeded, \"- Identifier:\", r.get_identifier())\n", + " else:\n", + " print(\"Succeeded: \", r.succeeded)" + ] } ], "metadata": { diff --git a/kgforge/core/commons/execution.py b/kgforge/core/commons/execution.py index b3d02ffdf..addd07eda 100644 --- a/kgforge/core/commons/execution.py +++ b/kgforge/core/commons/execution.py @@ -113,11 +113,14 @@ def dispatch( def catch_http_error( - r: requests.Response, error_to_throw: Type[BaseException], error_message_formatter + r: requests.Response, + error_to_throw: Type[BaseException], + error_message_formatter: Callable, + to_catch: Type[BaseException], ): try: r.raise_for_status() - except requests.HTTPError as e: + except to_catch as e: raise error_to_throw(error_message_formatter(e)) from e diff --git a/kgforge/core/forge.py b/kgforge/core/forge.py index 7fb05ee04..0f7d23e4e 100644 --- a/kgforge/core/forge.py +++ b/kgforge/core/forge.py @@ -662,12 +662,11 @@ def reshape( @catch def retrieve( self, - id: str, - version: Optional[Union[int, str]] = None, + id: Union[str, List[str]], + version: Optional[Union[int, str, List[Union[str, int]]]] = None, cross_bucket: bool = False, - **params, - **params, - ) -> Resource: + **params + ) -> Union[Optional[Resource], List[Optional[Resource]]]: """ Retrieve a resource by its identifier from the configured store and possibly at a given version. diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index cd34043d6..3103d0194 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -20,14 +20,14 @@ import json import mimetypes import re -from asyncio import Semaphore, Task +from asyncio import Semaphore, Task, AbstractEventLoop from pathlib import Path -from typing import Any, Dict, List, Optional, Tuple, Union, Type +from typing import Any, Dict, List, Optional, Tuple, Union, Type, Callable from urllib.parse import quote_plus, unquote, urlparse, parse_qs import requests -from aiohttp import ClientSession, MultipartWriter +from aiohttp import ClientSession, MultipartWriter, hdrs, ClientResponseError from aiohttp.hdrs import CONTENT_DISPOSITION, CONTENT_TYPE from kgforge.core.commons.constants import DEFAULT_REQUEST_TIMEOUT @@ -43,7 +43,7 @@ from kgforge.core.archetypes.mapping import Mapping from kgforge.core.archetypes.mapper import Mapper from kgforge.core.archetypes.resolver import Resolver -from kgforge.core.commons.actions import LazyAction +from kgforge.core.commons.actions import LazyAction, Action from kgforge.core.commons.context import Context from kgforge.core.commons.exceptions import ( DeprecationError, @@ -59,17 +59,17 @@ from kgforge.core.commons.execution import run, not_supported, catch_http_error from kgforge.core.commons.files import is_valid_url from kgforge.core.conversions.json import as_json -from kgforge.core.conversions.rdf import as_jsonld from kgforge.core.wrappings.dict import DictWrapper from kgforge.core.wrappings.paths import Filter, create_filters_from_dict from kgforge.specializations.mappers.dictionaries import DictionaryMapper from kgforge.specializations.mappings.dictionaries import DictionaryMapping -from kgforge.specializations.stores.nexus.http_helpers import files_create -from kgforge.specializations.stores.nexus.service import ( - BatchAction, - Service, - _error_message, +from kgforge.specializations.stores.nexus.batch_request_handler import ( + BatchRequestHandler, + BatchResult, ) +from kgforge.specializations.stores.nexus.service import Service, _error_message +import kgforge.specializations.stores.nexus.prepare_methods as prepare_methods +from kgforge.specializations.stores.nexus.http_helpers import files_create REQUEST_TIMEOUT = DEFAULT_REQUEST_TIMEOUT @@ -77,9 +77,17 @@ def catch_http_error_nexus( - r: requests.Response, e: Type[BaseException], error_message_formatter=_error_message + r: requests.Response, + e: Type[BaseException], + error_message_formatter: Callable = _error_message, + aiohttp_error=False, ): - return catch_http_error(r, e, error_message_formatter) + return catch_http_error( + r, + e, + error_message_formatter, + to_catch=requests.HTTPError if not aiohttp_error else ClientResponseError, + ) class BlueBrainNexus(Store): @@ -115,17 +123,15 @@ def register( ) def _register_many(self, resources: List[Resource], schema_id: str) -> None: + + fc_name = self._register_many.__name__ + def register_callback(task: Task): result = task.result() - if isinstance(result.response, Exception): - self.service.synchronize_resource( - result.resource, - result.response, - self._register_many.__name__, - False, - False, - ) - else: + succeeded = not isinstance(result.response, Exception) + + # This if is the one difference with the default callback + if succeeded: result.resource.id = result.response["@id"] if not hasattr(result.resource, "context"): context = self.model_context() or self.context @@ -134,80 +140,52 @@ def register_callback(task: Task): if context.is_http_iri() else context.document["@context"] ) - self.service.synchronize_resource( - result.resource, - result.response, - self._register_many.__name__, - True, - True, - ) + + self.service.synchronize_resource( + result.resource, result.response, fc_name, succeeded, succeeded + ) verified = self.service.verify( resources, - function_name=self._register_many.__name__, + function_name=fc_name, exception=RegistrationError, id_required=False, required_synchronized=False, execute_actions=True, ) - params_register = copy.deepcopy(self.service.params.get("register", {})) - self.service.batch_request( + BatchRequestHandler.batch_request_on_resources( + service=self.service, resources=verified, - action=BatchAction.CREATE, callback=register_callback, - error_type=RegistrationError, + prepare_function=prepare_methods.prepare_create, schema_id=schema_id, - params=params_register, ) def _register_one(self, resource: Resource, schema_id: str) -> None: - context = self.model_context() or self.context - data = as_jsonld( - resource, - "compacted", - False, - model_context=context, - metadata_context=None, - context_resolver=self.service.resolve_context, + method, url, resource, exception_, headers, params, payload = ( + prepare_methods.prepare_create(service=self.service, resource=resource) ) - params_register = copy.deepcopy(self.service.params.get("register", None)) - identifier = resource.get_identifier() - - if identifier: - - url = Service.add_schema_and_id_to_endpoint( - self.service.url_resources, schema_id=schema_id, resource_id=identifier - ) - - response = requests.put( - url, - headers=self.service.headers, - data=json.dumps(data, ensure_ascii=True), - params=params_register, - timeout=REQUEST_TIMEOUT, - ) - else: + response = requests.request( + method=method, + url=url, + headers=headers, + data=json.dumps(payload, ensure_ascii=True), + params=params, + timeout=REQUEST_TIMEOUT, + ) - url = Service.add_schema_and_id_to_endpoint( - self.service.url_resources, schema_id=schema_id, resource_id=None - ) + catch_http_error_nexus(response, exception_) - response = requests.post( - url, - headers=self.service.headers, - data=json.dumps(data, ensure_ascii=True), - params=params_register, - timeout=REQUEST_TIMEOUT, - ) - catch_http_error_nexus(response, RegistrationError) + data = payload response_json = response.json() resource.id = response_json["@id"] # If resource had no context, update it with the one provided by the store. if not hasattr(resource, "context"): resource.context = data["@context"] + self.service.sync_metadata(resource, response_json) def _upload_many(self, paths: List[Path], content_type: str) -> List[Dict]: @@ -253,11 +231,13 @@ def _upload_one(self, path: Path, content_type: str) -> Dict: try: headers = self.service.headers_upload filename = file.split("/")[-1] - headers[self.service.NEXUS_CONTENT_LENGTH_HEADER] = str(os.path.getsize(file)) - file_obj = { - "file": (filename, open(file, "rb"), mime_type) - } - response = requests.post(self.service.url_files, headers=headers, files=file_obj) + headers[self.service.NEXUS_CONTENT_LENGTH_HEADER] = str( + os.path.getsize(file) + ) + file_obj = {"file": (filename, open(file, "rb"), mime_type)} + response = requests.post( + self.service.url_files, headers=headers, files=file_obj + ) response.raise_for_status() except requests.HTTPError as e: @@ -291,8 +271,13 @@ def _local_url_parse(id_value, version_params) -> Tuple[str, Dict]: return id_without_query, query_params - def _retrieve_id( - self, id_, retrieve_source: bool, cross_bucket: bool, query_params: Dict + async def _retrieve_id( + self, + session, + id_, + retrieve_source: bool, + cross_bucket: bool, + query_params: Dict, ): """ Retrieves assuming the provided identifier really is the id @@ -324,17 +309,17 @@ def _retrieve_id( url = url_resource - response_not_source_with_metadata = requests.get( - url, - params=query_params, - headers=self.service.headers, - timeout=REQUEST_TIMEOUT, + async with session.request( + method=hdrs.METH_GET, url=url, headers=self.service.headers + ) as response_not_source_with_metadata: + # turns the retrieved data into a resource + not_source_with_metadata = await response_not_source_with_metadata.json() + + catch_http_error_nexus( + response_not_source_with_metadata, RetrievalError, aiohttp_error=True ) - catch_http_error_nexus(response_not_source_with_metadata, RetrievalError) try: - not_source_with_metadata = response_not_source_with_metadata.json() - # TODO temporary # if not (retrieve_source and cross_bucket): # return self.service.to_resource(not_source_with_metadata) @@ -350,24 +335,28 @@ def _retrieve_id( # Retrieves the appropriate data if retrieve_source = True if _self: - return self._merge_metadata_with_source_data( - _self, not_source_with_metadata, query_params + + return await self._merge_metadata_with_source_data( + session, _self, not_source_with_metadata, query_params ) raise RetrievalError("Cannot find metadata in payload") - def _merge_metadata_with_source_data( - self, _self, data_not_source_with_metadata, query_params + async def _merge_metadata_with_source_data( + self, session, _self, data_not_source_with_metadata, query_params ): - response_source = requests.get( + + async with session.request( + method=hdrs.METH_GET, url=f"{_self}/source", - params=query_params, headers=self.service.headers, - timeout=REQUEST_TIMEOUT, - ) - catch_http_error_nexus(response_source, RetrievalError) - # turns the retrieved data into a resource - data_source = response_source.json() + params=query_params, + ) as response_source: + # turns the retrieved data into a resource + data_source = await response_source.json() + + catch_http_error_nexus(response_source, RetrievalError, aiohttp_error=True) + resource = self.service.to_resource(data_source) # uses the metadata of the first call self.service.synchronize_resource( @@ -375,8 +364,8 @@ def _merge_metadata_with_source_data( ) return resource - def _retrieve_self( - self, self_, retrieve_source: bool, query_params: Dict + async def _retrieve_self( + self, session, self_, retrieve_source: bool, query_params: Dict ) -> Resource: """ Retrieves assuming the provided identifier is actually the resource's _self field @@ -385,28 +374,155 @@ def _retrieve_self( # url = f"{self_}/source" if retrieve_source else self_ url = self_ - response_not_source_with_metadata = requests.get( - url, - params=query_params, + async with session.request( + method=hdrs.METH_GET, + url=url, headers=self.service.headers, - timeout=REQUEST_TIMEOUT, + params=query_params, + ) as response_not_source_with_metadata: + # turns the retrieved data into a resource + not_source_with_metadata = await response_not_source_with_metadata.json() + + catch_http_error_nexus( + response_not_source_with_metadata, RetrievalError, aiohttp_error=True ) - catch_http_error_nexus(response_not_source_with_metadata, RetrievalError) try: - not_source_with_metadata = response_not_source_with_metadata.json() if not retrieve_source: return self.service.to_resource(not_source_with_metadata) except Exception as e: raise RetrievalError(e) from e - return self._merge_metadata_with_source_data( - self_, not_source_with_metadata, query_params + return await self._merge_metadata_with_source_data( + session, self_, not_source_with_metadata, query_params ) + def _retrieve_one( + self, id_: str, version: Optional[Union[int, str]], cross_bucket: bool, **params + ): + loop = asyncio.get_event_loop() + + async def do(): + async with ClientSession() as session: + return await self._retrieve( + semaphore=asyncio.Semaphore(1), + session=session, + id_=id_, + version=version, + cross_bucket=cross_bucket, + **params, + ) + + return loop.run_until_complete(do()) + + def _retrieve_many( + self, + ids: List[str], + versions: List[Optional[Union[int, str]]], + cross_bucket: bool, + **params, + ) -> List[Optional[Resource]]: + + def create_tasks( + semaphore: asyncio.Semaphore, + session: ClientSession, + loop: AbstractEventLoop, + ids_: List[Any], + service, + **kwargs, + ) -> List[asyncio.Task]: + + vs = kwargs["versions"] + tasks = [] + + def retrieve_done_callback(task: Task): + result = task.result() + + succeeded = not isinstance(result, Action) + + if isinstance(result, Resource): + self.service.synchronize_resource( + resource=result, + response=None, + action_name=self, + succeeded=succeeded, + synchronized=succeeded, + ) + + async def do_catch(id_, version): + try: + resource = await self._retrieve( + semaphore=semaphore, + session=session, + service=service, + id_=id_, + version=version, + **kwargs, + ) + return resource + except RetrievalError as e: + return Action(self._retrieve_many.__name__, False, e) + + for id_, version in zip(ids_, vs): + batch_result = do_catch(id_, version) + prepared_request: asyncio.Task = loop.create_task(batch_result) + prepared_request.add_done_callback(retrieve_done_callback) + tasks.append(prepared_request) + + return tasks + + batch_results = BatchRequestHandler.batch_request( + service=self.service, + task_creator=create_tasks, + data=ids, + versions=versions, + cross_bucket=cross_bucket, + **params, + ) + return batch_results + def retrieve( self, + id_: Union[str, List[str]], + version: Union[Optional[Union[int, str]], List[Optional[Union[int, str]]]], + cross_bucket: bool = False, + **params, + ) -> Union[List[Optional[Resource]], Optional[Resource]]: + """ + Retrieve one or many resources by identifier(s) from the configured store and possibly at a given version. + + :param id_: the identifier(s) of the resource(s) to retrieve + :param version: the version(s) of the resource(s) to retrieve. In case of list identifier and version values are matched by index + :param cross_bucket: instructs the configured store to whether search beyond the configured bucket (True) or not (False) + :param params: a dictionary of parameters. Supported parameters are: + [retrieve_source] whether to retrieve the resource payload as registered in the last update + (default: True) + :return: Union[List[Optional[Resource]], Optional[Resource]] + """ + + ids = [id_] if isinstance(id_, str) else id_ + + if len(ids) == 1: + + versions = ( + [version] if isinstance(version, (str, int)) else (version or [None]) + ) + + return self._retrieve_one(ids[0], versions[0], cross_bucket, **params) + + versions = [None] * len(ids) if version is None else version + + if len(versions) != len(ids): + raise Exception("As many versions as ids need to be provided") + + return self._retrieve_many(ids, versions, cross_bucket, **params) + + # TODO service.to_resource probably makes requests of its own and should have a callback in prepare_done + async def _retrieve( + self, + semaphore: asyncio.Semaphore, + session: ClientSession, id_: str, version: Optional[Union[int, str]], cross_bucket: bool = False, @@ -443,36 +559,39 @@ def retrieve( # if retrieve_source: # query_params.update({"annotate": True}) - try: - return self._retrieve_id( - id_=id_without_query, - retrieve_source=retrieve_source, - cross_bucket=cross_bucket, - query_params=query_params, - ) - except RetrievalError as er: + async with semaphore: + try: + return await self._retrieve_id( + session=session, + id_=id_without_query, + retrieve_source=retrieve_source, + cross_bucket=cross_bucket, + query_params=query_params, + ) + except RetrievalError as er: - # without org and proj, vs with - nexus_path_no_bucket = f"{self.service.endpoint}/resources/" - nexus_path = ( - nexus_path_no_bucket if cross_bucket else self.service.url_resources - ) + # without org and proj, vs with + nexus_path_no_bucket = f"{self.service.endpoint}/resources/" + nexus_path = ( + nexus_path_no_bucket if cross_bucket else self.service.url_resources + ) - if not id_without_query.startswith(nexus_path_no_bucket): - raise er + if not id_without_query.startswith(nexus_path_no_bucket): + raise er - if not id_without_query.startswith(nexus_path): - raise RetrievalError( - f"Provided resource identifier {id_} is not inside the current bucket, " - "use cross_bucket=True to be able to retrieve it" - ) + if not id_without_query.startswith(nexus_path): + raise RetrievalError( + f"Provided resource identifier {id_} is not inside the current bucket, " + "use cross_bucket=True to be able to retrieve it" + ) - # Try to use the id as it was given - return self._retrieve_self( - self_=id_without_query, - retrieve_source=retrieve_source, - query_params=query_params, - ) + # Try to use the id as it was given + return await self._retrieve_self( + session=session, + self_=id_without_query, + retrieve_source=retrieve_source, + query_params=query_params, + ) def _retrieve_file_metadata(self, id_: str) -> Dict: response = requests.get( @@ -620,90 +739,81 @@ def update( ) def _update_many(self, resources: List[Resource], schema_id: str) -> None: - update_callback = self.service.default_callback(self._update_many.__name__) + fc_name = self._update_many.__name__ + verified = self.service.verify( resources, - function_name=self._update_many.__name__, + function_name=fc_name, exception=UpdatingError, id_required=True, required_synchronized=False, execute_actions=True, ) - params_update = copy.deepcopy(self.service.params.get("update", {})) - self.service.batch_request( + + BatchRequestHandler.batch_request_on_resources( + service=self.service, resources=verified, - action=BatchAction.UPDATE, - callback=update_callback, - error_type=UpdatingError, - params=params_update, + callback=self.service.default_callback(fc_name), + prepare_function=prepare_methods.prepare_update, schema_id=schema_id, ) def _update_one(self, resource: Resource, schema_id: str) -> None: - context = self.model_context() or self.context - data = as_jsonld( - resource, - "compacted", - False, - model_context=context, - metadata_context=None, - context_resolver=self.service.resolve_context, - ) - url, params = self.service._prepare_uri( - resource, schema_id, use_unconstrained_id=True + + method, url, resource, exception_, headers, params, payload = ( + prepare_methods.prepare_update(service=self.service, resource=resource) ) - params_update = copy.deepcopy(self.service.params.get("update", {})) - params_update.update(params) - response = requests.put( - url, - headers=self.service.headers, - data=json.dumps(data, ensure_ascii=True), - params=params_update, + response = requests.request( + method=method, + url=url, + headers=headers, + data=json.dumps(payload, ensure_ascii=True), + params=params, timeout=REQUEST_TIMEOUT, ) - catch_http_error_nexus(response, UpdatingError) + catch_http_error_nexus(response, exception_) self.service.sync_metadata(resource, response.json()) def delete_schema(self, resource: Union[Resource, List[Resource]]): return self.update_schema(resource, schema_id=Service.UNCONSTRAINED_SCHEMA) def _update_schema_one(self, resource: Resource, schema_id: str): - - url = Service.add_schema_and_id_to_endpoint( - endpoint=self.service.url_resources, - schema_id=schema_id, - resource_id=resource.id, + method, url, resource, exception_, headers, params, payload = ( + prepare_methods.prepare_update_schema( + service=self.service, resource=resource, schema_id=schema_id + ) ) - response = requests.put( - url=f"{url}/update-schema", - headers=self.service.headers, + response = requests.request( + method=method, + url=url, + headers=headers, + data=json.dumps(payload, ensure_ascii=True), + params=params, timeout=REQUEST_TIMEOUT, ) - catch_http_error_nexus(response, SchemaUpdateError) + + catch_http_error_nexus(response, exception_) self.service.sync_metadata(resource, response.json()) def _update_schema_many(self, resources: List[Resource], schema_id: str): - - update_schema_callback = self.service.default_callback( - self._update_schema_many.__name__ - ) + fc_name = self._update_schema_many.__name__ verified = self.service.verify( resources, - function_name=self._update_schema_many.__name__, + function_name=fc_name, exception=SchemaUpdateError, id_required=True, required_synchronized=True, execute_actions=False, ) - self.service.batch_request( + BatchRequestHandler.batch_request_on_resources( + service=self.service, resources=verified, - action=BatchAction.UPDATE_SCHEMA, - callback=update_schema_callback, - error_type=SchemaUpdateError, + prepare_function=prepare_methods.prepare_update_schema, + callback=self.service.default_callback(fc_name), schema_id=schema_id, ) @@ -734,38 +844,41 @@ def tag(self, data: Union[Resource, List[Resource]], value: str) -> None: ) def _tag_many(self, resources: List[Resource], value: str) -> None: - tag_callback = self.service.default_callback(self._tag_many.__name__) + fc_name = self._tag_many.__name__ + verified = self.service.verify( resources, - function_name=self._tag_many.__name__, + function_name=fc_name, exception=TaggingError, id_required=True, required_synchronized=True, execute_actions=False, ) - params_tag = copy.deepcopy(self.service.params.get("tag", {})) - self.service.batch_request( + BatchRequestHandler.batch_request_on_resources( + service=self.service, resources=verified, - action=BatchAction.TAG, - callback=tag_callback, - error_type=TaggingError, + prepare_function=prepare_methods.prepare_tag, + callback=self.service.default_callback(fc_name), tag=value, - params=params_tag, ) def _tag_one(self, resource: Resource, value: str) -> None: - url, data, rev_param = self.service._prepare_tag(resource, value) - params_tag = copy.deepcopy(self.service.params.get("tag", {})) - params_tag.update(rev_param) - response = requests.post( - url, - headers=self.service.headers, - data=json.dumps(data, ensure_ascii=True), - params=params_tag, + method, url, resource, exception_, headers, params, payload = ( + prepare_methods.prepare_tag( + service=self.service, resource=resource, tag=value + ) + ) + + response = requests.request( + method=method, + url=url, + headers=headers, + data=json.dumps(payload, ensure_ascii=True), + params=params, timeout=REQUEST_TIMEOUT, ) - catch_http_error_nexus(response, TaggingError) + catch_http_error_nexus(response, exception_) self.service.sync_metadata(resource, response.json()) # CRU[D]. @@ -782,43 +895,40 @@ def deprecate(self, data: Union[Resource, List[Resource]]) -> None: ) def _deprecate_many(self, resources: List[Resource]) -> None: - deprecate_callback = self.service.default_callback( - self._deprecate_many.__name__ - ) + fc_name = self._deprecate_many.__name__ + verified = self.service.verify( resources, - function_name=self._deprecate_many.__name__, + function_name=fc_name, exception=DeprecationError, id_required=True, required_synchronized=True, execute_actions=False, ) - params_deprecate = copy.deepcopy(self.service.params.get("deprecate", {})) - self.service.batch_request( + + BatchRequestHandler.batch_request_on_resources( + service=self.service, resources=verified, - action=BatchAction.DEPRECATE, - callback=deprecate_callback, - error_type=DeprecationError, - params=params_deprecate, + prepare_function=prepare_methods.prepare_deprecate, + callback=self.service.default_callback(fc_name), ) def _deprecate_one(self, resource: Resource) -> None: - url, params = self.service._prepare_uri(resource) - params_deprecate = copy.deepcopy(self.service.params.get("deprecate", None)) - - if params_deprecate is not None: - params_deprecate.update(params) - else: - params_deprecate = params + method, url, resource, exception_, headers, params, payload = ( + prepare_methods.prepare_deprecate(service=self.service, resource=resource) + ) - response = requests.delete( - url, - headers=self.service.headers, - params=params_deprecate, + response = requests.request( + method=method, + url=url, + headers=headers, + data=json.dumps(payload, ensure_ascii=True), + params=params, timeout=REQUEST_TIMEOUT, ) - catch_http_error_nexus(response, DeprecationError) + + catch_http_error_nexus(response, exception_) self.service.sync_metadata(resource, response.json()) # Querying. @@ -926,14 +1036,12 @@ def search( offset=offset, view=params.get("view", None), ) - params_retrieve = copy.deepcopy(self.service.params.get("retrieve", {})) - params_retrieve["retrieve_source"] = retrieve_source - results = self.service.batch_request( + results = BatchRequestHandler.batch_request_on_resources( + service=self.service, resources=resources, - action=BatchAction.FETCH, + prepare_function=prepare_methods.prepare_fetch, callback=None, - error_type=QueryingError, - params=params_retrieve, + retrieve_source=retrieve_source, ) resources = [] for result in results: diff --git a/kgforge/specializations/stores/nexus/batch_request_handler.py b/kgforge/specializations/stores/nexus/batch_request_handler.py new file mode 100644 index 000000000..82360d0e5 --- /dev/null +++ b/kgforge/specializations/stores/nexus/batch_request_handler.py @@ -0,0 +1,110 @@ +from asyncio import AbstractEventLoop +from collections import namedtuple +import json +import asyncio + +from typing import Callable, Dict, List, Optional, Tuple, Type, Any +from typing_extensions import Unpack + +from aiohttp import ClientSession + +from kgforge.core.resource import Resource +from kgforge.core.commons.exceptions import RunException +from kgforge.specializations.stores.nexus.service import Service, _error_message + +BatchResult = namedtuple("BatchResult", ["resource", "response"]) +BatchResults = List[BatchResult] + + +class BatchRequestHandler: + + @staticmethod + def batch_request( + service: Service, + data: List[Any], + task_creator: Callable[ + [asyncio.Semaphore, ClientSession, AbstractEventLoop, List[Any], Service, Unpack[Any]], + List[asyncio.Task] + ], + **kwargs + ): + + async def dispatch_action(): + semaphore = asyncio.Semaphore(service.max_connection) + loop = asyncio.get_event_loop() + + async with ClientSession() as session: + tasks = task_creator( + semaphore, session, loop, data, service, **kwargs + ) + return await asyncio.gather(*tasks) + + return asyncio.run(dispatch_action()) + + @staticmethod + def batch_request_on_resources( + service: Service, + resources: List[Resource], + prepare_function: Callable[ + ['Service', Resource, Dict, Unpack[Any]], + Tuple[str, str, Resource, Type[RunException], Dict, Optional[Dict], Optional[Dict]] + ], + callback: Callable, + **kwargs + ) -> BatchResults: + + return BatchRequestHandler.batch_request( + service=service, + data=resources, + task_creator=BatchRequestHandler.create_tasks_for_resources, + prepare_function=prepare_function, + callback=callback, + **kwargs + ) + + @staticmethod + def create_tasks_for_resources( + semaphore: asyncio.Semaphore, + session: ClientSession, + loop: AbstractEventLoop, + resources: List[Resource], + service, + **kwargs + ) -> List[asyncio.Task]: + + prepare_function = kwargs["prepare_function"] + callback = kwargs["callback"] + + async def request(resource: Optional[Resource]) -> BatchResult: + + method, url, resource, exception, headers, params, payload = prepare_function( + service, resource, **kwargs + ) + + async with semaphore: + async with session.request( + method=method, + url=url, + headers=headers, + data=json.dumps(payload, ensure_ascii=True), + params=params + ) as response: + content = await response.json() + if response.status < 400: + return BatchResult(resource, content) + + error = exception(_error_message(content)) + return BatchResult(resource, error) + + tasks = [] + + for res in resources: + + prepared_request: asyncio.Task = loop.create_task(request(res)) + + if callback: + prepared_request.add_done_callback(callback) + + tasks.append(prepared_request) + + return tasks diff --git a/kgforge/specializations/stores/nexus/prepare_methods.py b/kgforge/specializations/stores/nexus/prepare_methods.py new file mode 100644 index 000000000..461e1e2ee --- /dev/null +++ b/kgforge/specializations/stores/nexus/prepare_methods.py @@ -0,0 +1,188 @@ +import copy +from typing import Dict, Optional, Tuple, Type +from typing_extensions import TypeAlias +from aiohttp import hdrs + +from kgforge.core.resource import Resource +import kgforge.core.commons.exceptions as run_exceptions +from kgforge.core.conversions.rdf import as_jsonld +from kgforge.specializations.stores.nexus.service import Service + +prepare_return: TypeAlias = Tuple[ + str, str, Resource, Type[run_exceptions.RunException], Dict, Optional[Dict], Optional[Dict] + # method, url, resource, exception to throw, headers, params, payload +] + +# TODO maybe params as a separate arg is not necessary. +# Used to be only service parameters being propagated, +# but since the service is available, the param can be retrieved here + + +def prepare_create( + service: Service, + resource: Resource, + **kwargs +) -> prepare_return: + + schema_id = kwargs.get("schema_id") + + params_register = copy.deepcopy(service.params.get("register", {})) + + identifier = resource.get_identifier() + + url = Service.add_schema_and_id_to_endpoint( + service.url_resources, schema_id=schema_id, resource_id=identifier + ) + + context = service.model_context or service.context + + payload = as_jsonld( + resource, + "compacted", + False, + model_context=context, + metadata_context=None, + context_resolver=service.resolve_context + ) + + method = hdrs.METH_PUT if identifier else hdrs.METH_POST + exception = run_exceptions.RegistrationError + + return method, url, resource, exception, service.headers, params_register, payload + + +def prepare_update( + service: Service, + resource: Resource, + **kwargs +) -> prepare_return: + + schema_id = kwargs.get("schema_id") + url, params = _prepare_uri(service, resource, schema_id, keep_unconstrained=True) + params_update = copy.deepcopy(service.params.get("update", {})) + params_update.update(params) + + payload = as_jsonld( + resource, + "compacted", + False, + model_context=service.model_context or service.context, + metadata_context=None, + context_resolver=service.resolve_context + ) + + method = hdrs.METH_PUT + exception = run_exceptions.UpdatingError + + return method, url, resource, exception, service.headers, params_update, payload + + +def _prepare_uri( + service, resource: Resource, schema_uri: Optional[str] = None, + keep_unconstrained: bool = False +) -> Tuple[str, Dict]: + schema_id = schema_uri or resource._store_metadata._constrainedBy + + if schema_id == service.UNCONSTRAINED_SCHEMA and not keep_unconstrained: + schema_id = None + + url = Service.add_schema_and_id_to_endpoint( + service.url_resources, schema_id, resource_id=resource.id + ) + + rev = resource._store_metadata._rev + params = {"rev": rev} + return url, params + + +def _prepare_tag(service: Service, resource: Resource, tag: str) -> Tuple[str, Dict, Dict]: + url, params = _prepare_uri(service, resource) + url = f"{url}/tags" + data = {"tag": tag} + data.update(params) + return url, data, params + + +def prepare_tag( + service: Service, + resource: Resource, + **kwargs +) -> prepare_return: + + provided_tag = kwargs.get("tag") + + url, payload, rev_param = _prepare_tag(service, resource, provided_tag) + + params_tag = copy.deepcopy(service.params.get("tag", {})) + params_tag.update(rev_param) + + method = hdrs.METH_POST + exception = run_exceptions.TaggingError + + return method, url, resource, exception, service.headers, params_tag, payload + + +def prepare_deprecate( + service: Service, + resource: Resource, + **kwargs +) -> prepare_return: + + params_deprecate = copy.deepcopy(service.params.get("deprecate", {})) + url, rev_param = _prepare_uri(service, resource) + params_deprecate.update(rev_param) + + method = hdrs.METH_DELETE + exception = run_exceptions.DeprecationError + payload = None + + return method, url, resource, exception, service.headers, params_deprecate, payload + + +def prepare_fetch( + service: Service, + resource: Resource, + **kwargs +) -> prepare_return: + + resource_org, resource_prj = resource._project.split("/")[-2:] + endpoint = Service.make_endpoint(service.endpoint, "resources", resource_org, resource_prj) + url = Service.add_schema_and_id_to_endpoint( + endpoint=endpoint, schema_id=None, resource_id=resource.id + ) + + fetch_params = copy.deepcopy(service.params.get("retrieve", {})) + + if hasattr(resource, "_rev"): + fetch_params["rev"] = resource._rev + + retrieve_source = kwargs.pop("retrieve_source", False) + + if retrieve_source: + url = "/".join((url, "source")) + + method = hdrs.METH_GET + exception = run_exceptions.QueryingError + payload = None + + return method, url, resource, exception, service.headers, fetch_params, payload + + +def prepare_update_schema( + service: Service, + resource: Resource, + **kwargs +) -> prepare_return: + + schema_id = kwargs.get("schema_id") + url = Service.add_schema_and_id_to_endpoint( + endpoint=service.url_resources, schema_id=schema_id, resource_id=resource.id + ) + + method = hdrs.METH_PUT + url = f"{url}/update-schema" + exception = run_exceptions.SchemaUpdateError + payload = None + update_schema_params = None + + return method, url, resource, exception, service.headers, update_schema_params, payload diff --git a/kgforge/specializations/stores/nexus/service.py b/kgforge/specializations/stores/nexus/service.py index f8fae7233..ab9fdc019 100644 --- a/kgforge/specializations/stores/nexus/service.py +++ b/kgforge/specializations/stores/nexus/service.py @@ -12,31 +12,29 @@ # You should have received a copy of the GNU Lesser General Public License # along with Blue Brain Nexus Forge. If not, see . +from typing import Callable, Dict, List, Optional, Union, Tuple, Type, Any import asyncio import copy import json from asyncio import Task -from collections import namedtuple from copy import deepcopy -from enum import Enum -from typing import Callable, Dict, List, Optional, Union, Tuple, Type from urllib.error import URLError -from urllib.parse import quote_plus +from urllib.parse import quote_plus, urlparse, parse_qs +import aiohttp import nest_asyncio import requests -from aiohttp import ClientSession, hdrs -from requests import HTTPError -from kgforge.core.commons.execution import not_supported -from kgforge.core.commons.constants import DEFAULT_REQUEST_TIMEOUT from kgforge.core.resource import Resource + +from kgforge.core.commons.constants import DEFAULT_REQUEST_TIMEOUT from kgforge.core.commons.actions import ( Action, collect_lazy_actions, execute_lazy_actions, LazyAction, ) + from kgforge.core.commons.exceptions import ConfigurationError, RunException from kgforge.core.commons.context import Context from kgforge.core.conversions.rdf import ( @@ -49,20 +47,12 @@ from kgforge.core.wrappings.dict import wrap_dict from kgforge.specializations.stores.nexus.http_helpers import views_fetch - -class BatchAction(Enum): - CREATE = "create" - FETCH = "fetch" - DEPRECATE = "deprecate" - UPDATE = "update" - TAG = "tag" - UPLOAD = "upload" - DOWNLOAD = "download" - UPDATE_SCHEMA = "update_schema" - - -BatchResult = namedtuple("BatchResult", ["resource", "response"]) -BatchResults = List[BatchResult] +from kgforge.core.conversions.rdf import ( + _from_jsonld_one, + _remove_ld_keys, + recursive_resolve, +) +from kgforge.core.wrappings.dict import wrap_dict class Service: @@ -265,6 +255,22 @@ def add_schema_and_id_to_endpoint( return "/".join(to_join) + @staticmethod + def _format_version( + version: Any, error_to_throw: Type[RunException] + ) -> Optional[Dict]: + if version is not None: + if isinstance(version, int): + version_params = {"rev": version} + elif isinstance(version, str): + version_params = {"tag": version} + else: + raise error_to_throw("incorrect 'version'") + else: + version_params = None + + return version_params + @staticmethod def make_query_endpoint( endpoint, view, endpoint_type, organisation, project @@ -291,7 +297,12 @@ def make_query_endpoint_self(self, view: str, endpoint_type: str): ) def get_project_context(self) -> Dict: - project_data = kgforge.specializations.stores.nexus.http_helpers.project_fetch(endpoint=self.endpoint, token=self.token, org_label=self.organisation, project_label=self.project) + project_data = kgforge.specializations.stores.nexus.http_helpers.project_fetch( + endpoint=self.endpoint, + token=self.token, + org_label=self.organisation, + project_label=self.project, + ) context = {"@base": project_data["base"], "@vocab": project_data["vocab"]} for mapping in project_data["apiMappings"]: context[mapping["prefix"]] = mapping["namespace"] @@ -343,98 +354,29 @@ def resolve_context(self, iri: str, local_only: Optional[bool] = False) -> Dict: self.context_cache.update({context_to_resolve: document}) return document - def batch_request( - self, - resources: List[Resource], - action: BatchAction, - callback: Callable, - error_type: RunException, - **kwargs, - ) -> Tuple[BatchResults, BatchResults]: - - def create_tasks( - semaphore: asyncio.Semaphore, - session: ClientSession, - loop, - data: List, - batch_action: BatchAction, - f_callback: Callable, - error: RunException, - ) -> List[Task]: - - prepare_function_map = { - batch_action.CREATE: BatchRequestHandler.prepare_batch_create, - batch_action.UPDATE: BatchRequestHandler.prepare_batch_update, - batch_action.TAG: BatchRequestHandler.prepare_batch_tag, - batch_action.DEPRECATE: BatchRequestHandler.prepare_batch_deprecate, - batch_action.FETCH: BatchRequestHandler.prepare_batch_fetch, - batch_action.UPDATE_SCHEMA: BatchRequestHandler.prepare_batch_update_schema, - } - - futures = [] - - for resource in data: - params = deepcopy(kwargs.pop("params", {})) - - prepare_function = prepare_function_map.get(batch_action, None) - - if prepare_function is None: - raise not_supported() - - prepared_request = prepare_function( - service=self, - resource=resource, - semaphore=semaphore, - session=session, - loop=loop, - params=params, - error=error, - **kwargs, - ) - - if f_callback: - prepared_request.add_done_callback(f_callback) - - futures.append(prepared_request) - - return futures - - async def dispatch_action(): - semaphore = asyncio.Semaphore(self.max_connection) - loop = asyncio.get_event_loop() - async with ClientSession() as session: - tasks = create_tasks( - semaphore, session, loop, resources, action, callback, error_type - ) - return await asyncio.gather(*tasks) - - return asyncio.run(dispatch_action()) - - def _prepare_tag(self, resource: Resource, tag: str) -> Tuple[str, Dict, Dict]: - url, params = self._prepare_uri(resource) - url = f"{url}/tags" - data = {"tag": tag} - data.update(params) - return url, data, params + @staticmethod + def _local_parse(id_value, version_params) -> Tuple[str, Dict]: + parsed_id = urlparse(id_value) + fragment = None + query_params = {} - def _prepare_uri( - self, - resource: Resource, - schema_uri: Optional[str] = None, - use_unconstrained_id: bool = False, - ) -> Tuple[str, Dict]: - schema_id = schema_uri or resource._store_metadata._constrainedBy + # urlparse is not separating fragment and query params when the latter are put after a fragment + if parsed_id.fragment is not None and "?" in str(parsed_id.fragment): + fragment_parts = urlparse(parsed_id.fragment) + query_params = parse_qs(fragment_parts.query) + fragment = fragment_parts.path + elif parsed_id.fragment is not None and parsed_id.fragment != "": + fragment = parsed_id.fragment + elif parsed_id.query is not None and parsed_id.query != "": + query_params = parse_qs(parsed_id.query) - if schema_id == self.UNCONSTRAINED_SCHEMA and not use_unconstrained_id: - schema_id = None + if version_params is not None: + query_params.update(version_params) - url = Service.add_schema_and_id_to_endpoint( - self.url_resources, schema_id, resource_id=resource.id - ) + formatted_fragment = "#" + fragment if fragment is not None else "" + id_without_query = f"{parsed_id.scheme}://{parsed_id.netloc}{parsed_id.path}{formatted_fragment}" - rev = resource._store_metadata._rev - params = {"rev": rev} - return url, params + return id_without_query, query_params def sync_metadata(self, resource: Resource, result: Dict) -> None: metadata = ( @@ -457,14 +399,15 @@ def sync_metadata(self, resource: Resource, result: Dict) -> None: def synchronize_resource( self, resource: Resource, - response: Union[Exception, Dict], + response: Optional[Union[Exception, Dict]], action_name: str, succeeded: bool, synchronized: bool, ) -> None: if succeeded: action = Action(action_name, succeeded, None) - self.sync_metadata(resource, response) + if response: # for requests that don't return metadata on success + self.sync_metadata(resource, response) else: action = Action(action_name, succeeded, response) @@ -578,13 +521,19 @@ def to_resource( return resource -def _error_message(error: Union[HTTPError, Dict]) -> str: +def _error_message( + error: Union[requests.HTTPError, aiohttp.ClientResponseError, Dict] +) -> str: def format_message(msg: str): return "".join([msg[0].lower(), msg[1:-1], msg[-1] if msg[-1] != "." else ""]) try: - # Error from Nexus - error_json = error.response.json() if isinstance(error, HTTPError) else error + error_json = ( + error.response.json() + if isinstance(error, (requests.HTTPError, aiohttp.ClientResponseError)) + else error + ) + messages = [] reason = error_json.get("reason", None) details = error_json.get("details", None) @@ -601,249 +550,10 @@ def format_message(msg: str): try: error_text = ( - error.response.text() if isinstance(error, HTTPError) else str(error) + error.response.text() + if isinstance(error, requests.HTTPError) + else str(error) ) return format_message(error_text) except Exception: return format_message(str(error)) - - -class BatchRequestHandler: - - @staticmethod - def prepare_batch_create( - service: Service, - resource: Resource, - semaphore: asyncio.Semaphore, - session: ClientSession, - loop, - params: Dict, - error: RunException, - **kwargs, - ) -> Task: - - schema_id = kwargs.get("schema_id") - url = Service.add_schema_and_id_to_endpoint( - service.url_resources, schema_id=schema_id, resource_id=None - ) - - context = service.model_context or service.context - payload = as_jsonld( - resource, - "compacted", - False, - model_context=context, - metadata_context=None, - context_resolver=service.resolve_context, - ) - - return loop.create_task( - BatchRequestHandler.queue( - hdrs.METH_POST, - semaphore, - session, - url, - resource, - error, - headers=service.headers, - payload=payload, - params=params, - ) - ) - - @staticmethod - def prepare_batch_update( - service: Service, - resource: Resource, - semaphore: asyncio.Semaphore, - session: ClientSession, - loop, - params: Dict, - error: RunException, - **kwargs, - ): - - url, params_from_resource = service._prepare_uri( - resource, schema_uri=kwargs.get("schema_id"), use_unconstrained_id=True - ) - - params.update(params_from_resource) - - payload = as_jsonld( - resource, - "compacted", - False, - model_context=service.model_context, - metadata_context=None, - context_resolver=service.resolve_context, - ) - return loop.create_task( - BatchRequestHandler.queue( - hdrs.METH_PUT, - semaphore, - session, - url, - resource, - error, - headers=service.headers, - payload=payload, - params=params, - ) - ) - - @staticmethod - def prepare_batch_tag( - service: Service, - resource: Resource, - semaphore: asyncio.Semaphore, - session: ClientSession, - loop, - params: Dict, - error: RunException, - **kwargs, - ): - url, payload, rev_param = service._prepare_tag(resource, kwargs.get("tag")) - params.update(rev_param) - - return loop.create_task( - BatchRequestHandler.queue( - hdrs.METH_POST, - semaphore, - session, - url, - resource, - error, - headers=service.headers, - payload=payload, - params=params, - ) - ) - - @staticmethod - def prepare_batch_deprecate( - service: Service, - resource: Resource, - semaphore: asyncio.Semaphore, - session: ClientSession, - loop, - params: Dict, - error: RunException, - **kwargs, - ): - url, rev_param = service._prepare_uri(resource) - params.update(rev_param) - - return loop.create_task( - BatchRequestHandler.queue( - hdrs.METH_DELETE, - semaphore, - session, - url, - resource, - error, - headers=service.headers, - params=params, - ) - ) - - @staticmethod - def prepare_batch_fetch( - service: Service, - resource: Resource, - semaphore: asyncio.Semaphore, - session: ClientSession, - loop, - params: Dict, - error: RunException, - **kwargs, - ): - resource_org, resource_prj = resource._project.split("/")[-2:] - endpoint = Service.make_endpoint( - service.endpoint, "resources", resource_org, resource_prj - ) - url = Service.add_schema_and_id_to_endpoint( - endpoint=endpoint, schema_id=None, resource_id=resource.id - ) - - if hasattr(resource, "_rev"): - params["rev"] = resource._rev - - retrieve_source = params.pop("retrieve_source", False) - - if retrieve_source: - url = "/".join((url, "source")) - - return loop.create_task( - BatchRequestHandler.queue( - hdrs.METH_GET, - semaphore, - session, - url, - resource, - error, - headers=service.headers, - params=params, - ) - ) - - @staticmethod - def prepare_batch_update_schema( - service: Service, - resource: Resource, - semaphore: asyncio.Semaphore, - session: ClientSession, - loop, - params: Dict, - error: RunException, - **kwargs, - ): - - schema_id = kwargs.get("schema_id") - url = Service.add_schema_and_id_to_endpoint( - endpoint=service.url_resources, schema_id=schema_id, resource_id=resource.id - ) - - return loop.create_task( - BatchRequestHandler.queue( - hdrs.METH_PUT, - semaphore, - session, - url=f"{url}/update-schema", - resource=resource, - exception=error, - headers=service.headers, - payload=None, - params=None, - ) - ) - - @staticmethod - async def queue( - method, - semaphore, - session, - url, - resource, - exception, - headers, - payload=None, - params=None, - ): - async with semaphore: - return await BatchRequestHandler.request( - method, session, url, resource, payload, params, exception, headers - ) - - @staticmethod - async def request( - method, session, url, resource, payload, params, exception, headers - ): - async with session.request( - method, url, headers=headers, data=json.dumps(payload), params=params - ) as response: - content = await response.json() - if response.status < 400: - return BatchResult(resource, content) - - error = exception(_error_message(content)) - return BatchResult(resource, error) diff --git a/setup.py b/setup.py index 3446e1bb2..1ecbc0725 100644 --- a/setup.py +++ b/setup.py @@ -51,6 +51,7 @@ "owlrl>=5.2.3", "elasticsearch_dsl==7.4.0", "requests==2.31.0", + "typing-extensions" ], extras_require={ "dev": [ diff --git a/tests/specializations/stores/test_bluebrain_nexus.py b/tests/specializations/stores/test_bluebrain_nexus.py index a4bcdab5f..a47817c2e 100644 --- a/tests/specializations/stores/test_bluebrain_nexus.py +++ b/tests/specializations/stores/test_bluebrain_nexus.py @@ -36,7 +36,8 @@ # FIXME mock Nexus for unittests # TODO To be port to the generic parameterizable test suite for stores in test_stores.py. DKE-135. -from kgforge.specializations.stores.nexus import Service +from kgforge.specializations.stores.nexus import Service, prepare_methods +from kgforge.specializations.stores.nexus.prepare_methods import _prepare_uri from utils import full_path_relative_to_root MODEL = DemoModel( @@ -47,6 +48,8 @@ ) BUCKET = "test/kgforge" NEXUS = "https://nexus-instance.org" + + TOKEN = "token" NEXUS_PROJECT_CONTEXT = { "base": "http://data.net", @@ -314,19 +317,16 @@ def test_prepare_tag_uri( ): registered_building._store_metadata._constrainedBy = _constrainedBy - url, params = nexus_store.service._prepare_uri(registered_building, schema_id) + url, params = _prepare_uri(nexus_store.service, registered_building, schema_id) expected_url = expected_url_template.format(quote_plus(registered_building.id)) assert params == expected_params assert url == expected_url tagValue = "aTag" - url, data, params = nexus_store.service._prepare_tag(registered_building, tagValue) - expected_url_tag = expected_url_tag_template.format( - quote_plus(registered_building.id) - ) - expected_data = {"tag": tagValue, "rev": registered_building._store_metadata._rev} - + url, data, params = prepare_methods._prepare_tag(nexus_store.service, registered_building, tagValue) + expected_url_tag = expected_url_tag_template.format(quote_plus(registered_building.id)) + expected_data = {"tag":tagValue, "rev":registered_building._store_metadata._rev} assert params == expected_params assert data == expected_data assert url == expected_url_tag From 7848a548d04f539c1992c0010392b35758a1fe97 Mon Sep 17 00:00:00 2001 From: Sarah Date: Fri, 21 Jun 2024 16:18:47 +0200 Subject: [PATCH 45/49] rewrite uri as static method (#413) --- kgforge/specializations/stores/bluebrain_nexus.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index 3103d0194..366b852f3 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -1311,16 +1311,17 @@ def _initialize_service( **params, ) - def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: + @staticmethod + def rewrite_uri_static(endpoint: str, bucket: str, uri: str, context: Context, **kwargs) -> str: is_file = kwargs.get("is_file", True) encoding = kwargs.get("encoding", None) # try decoding the url first raw_url = unquote(uri) if is_file: # for files - url_base = "/".join([self.endpoint, "files", self.bucket]) + url_base = "/".join([endpoint, "files", bucket]) else: # for resources - url_base = "/".join([self.endpoint, "resources", self.bucket]) + url_base = "/".join([endpoint, "resources", bucket]) matches = re.match(r"[\w\.:%/-]+/(\w+):(\w+)/[\w\.-/:%]+", raw_url) if matches: groups = matches.groups() @@ -1361,5 +1362,8 @@ def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: uri = "/".join((url_base, quote_plus(url, encoding=encoding))) return uri + def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: + return BlueBrainNexus.rewrite_uri_static(self.endpoint, self.bucket, uri, context, **kwargs) + def _freeze_many(self, resources: List[Resource]) -> None: raise not_supported() From 42b6f8cbf0b05b222bcc87caa2af5add75463db9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristina=20E=2E=20Gonz=C3=A1lez-Espinoza?= Date: Fri, 28 Jun 2024 14:07:24 +0200 Subject: [PATCH 46/49] Check for schema id to use schema endpoint (#415) * Check for schema id to use schema endpoint * Add example in unit test * Add missing parameter inside _register_one. Add notebook example of schema handling * check if resource_id is given --- ...BP KG Creating and Modifying Schemas.ipynb | 254 ++++++++++++++++++ .../specializations/stores/bluebrain_nexus.py | 3 +- .../stores/nexus/prepare_methods.py | 22 +- .../specializations/stores/nexus/service.py | 9 + .../stores/test_bluebrain_nexus.py | 8 + 5 files changed, 288 insertions(+), 8 deletions(-) create mode 100644 examples/notebooks/use-cases/BBP KG Creating and Modifying Schemas.ipynb diff --git a/examples/notebooks/use-cases/BBP KG Creating and Modifying Schemas.ipynb b/examples/notebooks/use-cases/BBP KG Creating and Modifying Schemas.ipynb new file mode 100644 index 000000000..3764c948b --- /dev/null +++ b/examples/notebooks/use-cases/BBP KG Creating and Modifying Schemas.ipynb @@ -0,0 +1,254 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "b14744df-3567-40f3-bb0c-06c6767ab695", + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "import json\n", + "import uuid\n", + "\n", + "from kgforge.core import KnowledgeGraphForge\n", + "from kgforge.specializations.resources import Dataset" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "72596414-c9ac-4312-a621-5bd4fdc3477b", + "metadata": {}, + "outputs": [], + "source": [ + "import getpass\n", + "TOKEN = getpass.getpass()" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "c124caae-b9ae-4eb4-8d8e-bc437d28d3e6", + "metadata": {}, + "outputs": [], + "source": [ + "BUCKET = \"dke/kgforge\"\n", + "\n", + "forge = KnowledgeGraphForge(\"../use-cases/prod-forge-nexus.yml\",\n", + " bucket=BUCKET,\n", + " token=TOKEN\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "29bceff6-d7b4-4fda-9cc3-fe1923c0f865", + "metadata": {}, + "outputs": [], + "source": [ + "def make_id(i):\n", + " return f\"{forge._store.endpoint}/schemas/{forge._store.bucket}/dummy_schema_{i}\"\n", + "\n", + "def create_schema(i):\n", + " payload = {\n", + " \"context\": \"https://incf.github.io/neuroshapes/contexts/schema.json\",\n", + " \"id\": make_id(i),\n", + " \"type\": \"Schema\",\n", + " \"imports\": [\n", + " \"https://neuroshapes.org/commons/entity\"\n", + " ],\n", + " \"shapes\": [\n", + " {\n", + " \"@id\": f\"{make_id(i)}/shapes/DummyShape\",\n", + " \"@type\": \"NodeShape\",\n", + " \"node\": \"https://neuroshapes.org/commons/entity/shapes/EntityShape\",\n", + " }\n", + " ]\n", + " }\n", + " resource = forge.from_json(payload)\n", + " forge.register(resource, schema_id=forge._store.service.SHACL_SCHEMA)\n", + " return resource" + ] + }, + { + "cell_type": "markdown", + "id": "e79f1807-dbfa-4cca-ab08-4809c9962517", + "metadata": {}, + "source": [ + "## 1. Create dummy schemas" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "9a022c3d", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _register_one\n", + " True\n", + " _register_one\n", + " True\n", + " _register_one\n", + " True\n" + ] + } + ], + "source": [ + "dummies = [create_schema(uuid.uuid4()) for j in range(3)]" + ] + }, + { + "cell_type": "markdown", + "id": "d10b21d5-212b-48cc-b4a2-7ef2f739b2ed", + "metadata": {}, + "source": [ + "## 2. Retrieve the reciently created schemas using the ids and tag them" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "515b3e19", + "metadata": {}, + "outputs": [], + "source": [ + "retrieved = [forge.retrieve(dummy.id) for dummy in dummies]" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "2c5594ee", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{\n", + " context: https://incf.github.io/neuroshapes/contexts/schema.json\n", + " id: https://bbp.epfl.ch/nexus/v1/schemas/dke/kgforge/dummy_schema_7fab9433-af89-43eb-878a-607389240256\n", + " type: Schema\n", + " imports:\n", + " [\n", + " https://neuroshapes.org/commons/entity\n", + " ]\n", + " shapes:\n", + " [\n", + " {\n", + " id: https://bbp.epfl.ch/nexus/v1/schemas/dke/kgforge/dummy_schema_7fab9433-af89-43eb-878a-607389240256/shapes/DummyShape\n", + " type: NodeShape\n", + " node: https://neuroshapes.org/commons/entity/shapes/EntityShape\n", + " }\n", + " ]\n", + "}\n" + ] + } + ], + "source": [ + "print(retrieved[0])" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "efb9cb41", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "https://bluebrain.github.io/nexus/schemas/shacl-20170720.ttl\n" + ] + } + ], + "source": [ + "print(retrieved[0]._store_metadata['_constrainedBy'])" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "a4f95633", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _tag_one\n", + " True\n", + " _tag_one\n", + " True\n", + " _tag_one\n", + " True\n" + ] + } + ], + "source": [ + "for r in retrieved:\n", + " forge.tag(r, 't01')" + ] + }, + { + "cell_type": "markdown", + "id": "551f3fdc-4760-4c6b-861b-6ac085f27e00", + "metadata": {}, + "source": [ + "## 3. Deprecate the schemas" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "e6859730", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " _deprecate_one\n", + " True\n", + " _deprecate_one\n", + " True\n", + " _deprecate_one\n", + " True\n" + ] + } + ], + "source": [ + "for r in retrieved:\n", + " forge.deprecate(r)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "dev-forge", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.18" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index 366b852f3..19c5de74a 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -164,9 +164,8 @@ def register_callback(task: Task): def _register_one(self, resource: Resource, schema_id: str) -> None: method, url, resource, exception_, headers, params, payload = ( - prepare_methods.prepare_create(service=self.service, resource=resource) + prepare_methods.prepare_create(service=self.service, resource=resource, schema_id=schema_id) ) - response = requests.request( method=method, url=url, diff --git a/kgforge/specializations/stores/nexus/prepare_methods.py b/kgforge/specializations/stores/nexus/prepare_methods.py index 461e1e2ee..5dddbb9da 100644 --- a/kgforge/specializations/stores/nexus/prepare_methods.py +++ b/kgforge/specializations/stores/nexus/prepare_methods.py @@ -18,6 +18,20 @@ # but since the service is available, the param can be retrieved here +def _make_url(service: Service, + schema_id: str, + identifier: str): + if schema_id == service.SHACL_SCHEMA: + url = Service.add_resource_id_to_endpoint( + service.url_schemas, resource_id=identifier + ) + else: + url = Service.add_schema_and_id_to_endpoint( + service.url_resources, schema_id=schema_id, resource_id=identifier + ) + return url + + def prepare_create( service: Service, resource: Resource, @@ -30,9 +44,7 @@ def prepare_create( identifier = resource.get_identifier() - url = Service.add_schema_and_id_to_endpoint( - service.url_resources, schema_id=schema_id, resource_id=identifier - ) + url = _make_url(service, schema_id, identifier) context = service.model_context or service.context @@ -86,9 +98,7 @@ def _prepare_uri( if schema_id == service.UNCONSTRAINED_SCHEMA and not keep_unconstrained: schema_id = None - url = Service.add_schema_and_id_to_endpoint( - service.url_resources, schema_id, resource_id=resource.id - ) + url = _make_url(service, schema_id, resource.id) rev = resource._store_metadata._rev params = {"rev": rev} diff --git a/kgforge/specializations/stores/nexus/service.py b/kgforge/specializations/stores/nexus/service.py index ab9fdc019..e0e8e64e5 100644 --- a/kgforge/specializations/stores/nexus/service.py +++ b/kgforge/specializations/stores/nexus/service.py @@ -69,6 +69,7 @@ class Service: UNCONSTRAINED_SCHEMA = ( "https://bluebrain.github.io/nexus/schemas/unconstrained.json" ) + SHACL_SCHEMA = "https://bluebrain.github.io/nexus/schemas/shacl-20170720.ttl" SPARQL_ENDPOINT_TYPE = "sparql" ELASTIC_ENDPOINT_TYPE = "elastic" @@ -174,6 +175,7 @@ def __init__( self.url_files = Service.make_endpoint(self.endpoint, "files", org, prj) self.url_resources = Service.make_endpoint(self.endpoint, "resources", org, prj) self.url_resolver = Service.make_endpoint(self.endpoint, "resolvers", org, prj) + self.url_schemas = Service.make_endpoint(self.endpoint, "schemas", org, prj) self.metadata_context = Context( recursive_resolve( @@ -242,6 +244,13 @@ def make_endpoint( (endpoint, endpoint_type, quote_plus(organisation), quote_plus(project)) ) + @staticmethod + def add_resource_id_to_endpoint(endpoint: str, resource_id: Optional[str]): + if resource_id: + return "/".join([endpoint, quote_plus(resource_id)]) + else: + return endpoint + @staticmethod def add_schema_and_id_to_endpoint( endpoint: str, schema_id: Optional[str], resource_id: Optional[str] diff --git a/tests/specializations/stores/test_bluebrain_nexus.py b/tests/specializations/stores/test_bluebrain_nexus.py index a47817c2e..b931d4f54 100644 --- a/tests/specializations/stores/test_bluebrain_nexus.py +++ b/tests/specializations/stores/test_bluebrain_nexus.py @@ -304,6 +304,14 @@ def test_to_resource(nexus_store, registered_building, building_jsonld, store_co ("/".join((NEXUS, "resources", BUCKET, quote_plus("_"), "{}", "tags"))), id="tag-unconstrained", ), + pytest.param( + (Service.SHACL_SCHEMA), + (Service.SHACL_SCHEMA), + ({"rev": 1}), + ("/".join((NEXUS, "schemas", BUCKET, "{}"))), + ("/".join((NEXUS, "schemas", BUCKET, "{}", "tags"))), + id="tag-schema", + ), ], ) def test_prepare_tag_uri( From 6777f706cfa3337ad90ada6c9026b6f9ac3705c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristina=20E=2E=20Gonz=C3=A1lez-Espinoza?= Date: Fri, 28 Jun 2024 15:47:11 +0200 Subject: [PATCH 47/49] Use schema_id in prepare_update (#416) --- kgforge/specializations/stores/bluebrain_nexus.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index 19c5de74a..8ece889a8 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -760,7 +760,7 @@ def _update_many(self, resources: List[Resource], schema_id: str) -> None: def _update_one(self, resource: Resource, schema_id: str) -> None: method, url, resource, exception_, headers, params, payload = ( - prepare_methods.prepare_update(service=self.service, resource=resource) + prepare_methods.prepare_update(service=self.service, resource=resource, schema_id=schema_id) ) response = requests.request( From 3e26c2e56a0bff354b345e7df871f835a6339658 Mon Sep 17 00:00:00 2001 From: Mohameth Francois Sy Date: Fri, 5 Jul 2024 16:12:57 +0200 Subject: [PATCH 48/49] Merge master in dev-datasets --- kgforge/core/commons/execution.py | 1 - kgforge/core/commons/sparql_query_builder.py | 5 ++++- kgforge/core/forge.py | 4 +++- .../specializations/stores/bluebrain_nexus.py | 16 ++++++++++++---- 4 files changed, 19 insertions(+), 7 deletions(-) diff --git a/kgforge/core/commons/execution.py b/kgforge/core/commons/execution.py index addd07eda..32e0edad4 100644 --- a/kgforge/core/commons/execution.py +++ b/kgforge/core/commons/execution.py @@ -136,7 +136,6 @@ def run( catch_exceptions: bool = True, **kwargs, ) -> None: - # POLICY Should be called for operations on resources where recovering from errors is needed. if isinstance(data, List) and all(isinstance(x, Resource) for x in data): if fun_many is None: diff --git a/kgforge/core/commons/sparql_query_builder.py b/kgforge/core/commons/sparql_query_builder.py index 2c9ff7979..38ab3be0f 100644 --- a/kgforge/core/commons/sparql_query_builder.py +++ b/kgforge/core/commons/sparql_query_builder.py @@ -169,7 +169,10 @@ def build( value = format_type[value_type]( parsed_value if parsed_value else f.value ) - if value_type is CategoryDataType.LITERAL and f.operator not in ["__eq__", "__ne__"]: + if value_type is CategoryDataType.LITERAL and f.operator not in [ + "__eq__", + "__ne__", + ]: raise NotImplementedError( "supported operators are '==' and '!=' when filtering with a str." ) diff --git a/kgforge/core/forge.py b/kgforge/core/forge.py index 0f7d23e4e..bf87a38d2 100644 --- a/kgforge/core/forge.py +++ b/kgforge/core/forge.py @@ -665,7 +665,7 @@ def retrieve( id: Union[str, List[str]], version: Optional[Union[int, str, List[Union[str, int]]]] = None, cross_bucket: bool = False, - **params + **params, ) -> Union[Optional[Resource], List[Optional[Resource]]]: """ Retrieve a resource by its identifier from the configured store and possibly at a given version. @@ -755,6 +755,7 @@ def elastic( debug: bool = False, limit: Optional[int] = None, offset: Optional[int] = None, + source: Optional[str] = None, **params, ) -> Union[List[Resource], Resource, List[Dict], Dict]: """ @@ -784,6 +785,7 @@ def download( overwrite: bool = False, cross_bucket: bool = False, content_type: str = None, + source: Optional[str] = None, ) -> None: """ Download files attached to a resource or a list of resources. diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index 8ece889a8..ebf9ff4c7 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -164,7 +164,9 @@ def register_callback(task: Task): def _register_one(self, resource: Resource, schema_id: str) -> None: method, url, resource, exception_, headers, params, payload = ( - prepare_methods.prepare_create(service=self.service, resource=resource, schema_id=schema_id) + prepare_methods.prepare_create( + service=self.service, resource=resource, schema_id=schema_id + ) ) response = requests.request( method=method, @@ -760,7 +762,9 @@ def _update_many(self, resources: List[Resource], schema_id: str) -> None: def _update_one(self, resource: Resource, schema_id: str) -> None: method, url, resource, exception_, headers, params, payload = ( - prepare_methods.prepare_update(service=self.service, resource=resource, schema_id=schema_id) + prepare_methods.prepare_update( + service=self.service, resource=resource, schema_id=schema_id + ) ) response = requests.request( @@ -1311,7 +1315,9 @@ def _initialize_service( ) @staticmethod - def rewrite_uri_static(endpoint: str, bucket: str, uri: str, context: Context, **kwargs) -> str: + def rewrite_uri_static( + endpoint: str, bucket: str, uri: str, context: Context, **kwargs + ) -> str: is_file = kwargs.get("is_file", True) encoding = kwargs.get("encoding", None) @@ -1362,7 +1368,9 @@ def rewrite_uri_static(endpoint: str, bucket: str, uri: str, context: Context, * return uri def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: - return BlueBrainNexus.rewrite_uri_static(self.endpoint, self.bucket, uri, context, **kwargs) + return BlueBrainNexus.rewrite_uri_static( + self.endpoint, self.bucket, uri, context, **kwargs + ) def _freeze_many(self, resources: List[Resource]) -> None: raise not_supported() From b1f8d0902b554bdbda6a057aac57b2a5e72e3868 Mon Sep 17 00:00:00 2001 From: Mohameth Francois Sy Date: Tue, 9 Jul 2024 14:46:23 +0200 Subject: [PATCH 49/49] Fixed tox errors --- kgforge/core/commons/execution.py | 47 ++++++++++--------- kgforge/core/forge.py | 6 +-- .../specializations/stores/bluebrain_nexus.py | 17 +++++-- .../specializations/stores/sparql_store.py | 10 ---- 4 files changed, 37 insertions(+), 43 deletions(-) diff --git a/kgforge/core/commons/execution.py b/kgforge/core/commons/execution.py index dd88d6812..addd07eda 100644 --- a/kgforge/core/commons/execution.py +++ b/kgforge/core/commons/execution.py @@ -113,9 +113,10 @@ def dispatch( def catch_http_error( - r: requests.Response, error_to_throw: Type[BaseException], - error_message_formatter: Callable, - to_catch: Type[BaseException] + r: requests.Response, + error_to_throw: Type[BaseException], + error_message_formatter: Callable, + to_catch: Type[BaseException], ): try: r.raise_for_status() @@ -123,17 +124,17 @@ def catch_http_error( raise error_to_throw(error_message_formatter(e)) from e -def run - fun_one: Callable, - fun_many: Optional[Callable], - data: Union[Resource, List[Resource]], - exception: Type[RunException], - id_required: bool = False, - required_synchronized: Optional[bool] = None, - execute_actions: bool = False, - monitored_status: Optional[str] = None, - catch_exceptions: bool = True, - **kwargs +def run( + fun_one: Callable, + fun_many: Optional[Callable], + data: Union[Resource, List[Resource]], + exception: Type[RunException], + id_required: bool = False, + required_synchronized: Optional[bool] = None, + execute_actions: bool = False, + monitored_status: Optional[str] = None, + catch_exceptions: bool = True, + **kwargs, ) -> None: # POLICY Should be called for operations on resources where recovering from errors is needed. @@ -178,15 +179,15 @@ def _run_many(fun: Callable, resources: List[Resource], *args, **kwargs) -> None def _run_one( - fun: Callable, - resource: Resource, - exception: Type[RunException], - id_required: bool, - required_synchronized: Optional[bool], - execute_actions: bool, - monitored_status: Optional[str], - catch_exceptions: bool, - **kwargs + fun: Callable, + resource: Resource, + exception: Type[RunException], + id_required: bool, + required_synchronized: Optional[bool], + execute_actions: bool, + monitored_status: Optional[str], + catch_exceptions: bool, + **kwargs, ) -> None: try: diff --git a/kgforge/core/forge.py b/kgforge/core/forge.py index c2d257647..a7096bb15 100644 --- a/kgforge/core/forge.py +++ b/kgforge/core/forge.py @@ -273,7 +273,6 @@ def __init__(self, configuration: Union[str, Dict], **kwargs) -> None: dataset_config, store_config ) - @staticmethod def set_environment_variables(): # Set environment variable for pyshacl @@ -512,7 +511,6 @@ def format( uri: str = None, **kwargs, ) -> str: - """ Select a configured formatter (see https://nexus-forge.readthedocs.io/en/latest/interaction.html#formatting) string (identified by 'what') and format it using provided '*args' :param what: a configured str format name. Required formatter:str = Formatter.STR @@ -653,7 +651,7 @@ def retrieve( id: Union[str, List[str]], version: Optional[Union[int, str, List[Union[str, int]]]] = None, cross_bucket: bool = False, - **params + **params, ) -> Union[Optional[Resource], List[Optional[Resource]]]: """ Retrieve a resource by its identifier from the configured store and possibly at a given version. @@ -668,7 +666,6 @@ def retrieve( id_=id, version=version, cross_bucket=cross_bucket, **params ) - @catch def paths(self, type: str) -> PathsWrapper: """ @@ -705,7 +702,6 @@ def search(self, *filters: Union[Dict, Filter], **params) -> List[Resource]: raise AttributeError("Selected database was not declared within forge.") return self._store.search(resolvers, *filters, **params) - @catch def sparql( self, diff --git a/kgforge/specializations/stores/bluebrain_nexus.py b/kgforge/specializations/stores/bluebrain_nexus.py index f08a70c2c..cf1fe60dc 100644 --- a/kgforge/specializations/stores/bluebrain_nexus.py +++ b/kgforge/specializations/stores/bluebrain_nexus.py @@ -164,7 +164,9 @@ def register_callback(task: Task): def _register_one(self, resource: Resource, schema_id: str) -> None: method, url, resource, exception_, headers, params, payload = ( - prepare_methods.prepare_create(service=self.service, resource=resource, schema_id=schema_id) + prepare_methods.prepare_create( + service=self.service, resource=resource, schema_id=schema_id + ) ) response = requests.request( method=method, @@ -759,7 +761,9 @@ def _update_many(self, resources: List[Resource], schema_id: str) -> None: def _update_one(self, resource: Resource, schema_id: str) -> None: method, url, resource, exception_, headers, params, payload = ( - prepare_methods.prepare_update(service=self.service, resource=resource, schema_id=schema_id) + prepare_methods.prepare_update( + service=self.service, resource=resource, schema_id=schema_id + ) ) response = requests.request( @@ -1310,7 +1314,9 @@ def _initialize_service( ) @staticmethod - def rewrite_uri_static(endpoint: str, bucket: str, uri: str, context: Context, **kwargs) -> str + def rewrite_uri_static( + endpoint: str, bucket: str, uri: str, context: Context, **kwargs + ) -> str: is_file = kwargs.get("is_file", True) encoding = kwargs.get("encoding", None) @@ -1361,8 +1367,9 @@ def rewrite_uri_static(endpoint: str, bucket: str, uri: str, context: Context, * return uri def rewrite_uri(self, uri: str, context: Context, **kwargs) -> str: - return BlueBrainNexus.rewrite_uri_static(self.endpoint, self.bucket, uri, context, **kwargs) - + return BlueBrainNexus.rewrite_uri_static( + self.endpoint, self.bucket, uri, context, **kwargs + ) def _freeze_many(self, resources: List[Resource]) -> None: raise not_supported() diff --git a/kgforge/specializations/stores/sparql_store.py b/kgforge/specializations/stores/sparql_store.py index d047ffa6e..8d7d9f3bb 100644 --- a/kgforge/specializations/stores/sparql_store.py +++ b/kgforge/specializations/stores/sparql_store.py @@ -45,15 +45,6 @@ def __init__( **store_config, ) -> None: - def __init__( - self, - model: Optional[Model] = None, - endpoint: Optional[str] = None, - file_resource_mapping: Optional[str] = None, - searchendpoints: Optional[Dict] = None, - **store_config, - ) -> None: - super().__init__(model) self.endpoint = endpoint self.file_resource_mapping = file_resource_mapping @@ -65,7 +56,6 @@ def __init__( endpoint, searchendpoints, **store_config ) - @property def mapper(self) -> Optional[Type[Mapper]]: return DictionaryMapper