def validate(self, resource: Resource): try: shape_iri = self.types_to_shapes[resource.type] except AttributeError: raise TypeError("resource requires a type attribute") else: data_graph = as_graph(resource, False, self.context, None, None) return self._validate(shape_iri, data_graph)
def test_as_graph(self, building, organization, building_jsonld, model_context,store_metadata, metadata_context): store_metadata = False building.id = "http://test/1234" building.context = model_context.document["@context"] data = building_jsonld(building, "compacted", store_metadata, None) expected = Graph().parse(data=json.dumps(data), format="json-ld") result = as_graph(building, store_metadata, model_context, None, None) _assert_same_graph(result, expected) organization_jsonld = as_jsonld(organization, form="compacted", store_metadata=store_metadata, model_context=model_context, metadata_context=metadata_context, context_resolver=None, na=None) expected = Graph() expected.parse(data=json.dumps(data), format="json-ld") expected.parse(data=json.dumps(organization_jsonld), format="json-ld") result = as_graph([building, organization], store_metadata, model_context, None, None) _assert_same_graph(result, expected)
def test_as_graph(self, building, building_jsonld, model_context): store_metadata = False building.id = "http://test/1234" building.context = model_context.document["@context"] data = building_jsonld(building, "compacted", store_metadata, None) expected = Graph().parse(data=json.dumps(data), format="json-ld") result = as_graph(building, store_metadata, model_context, None, None) for s, p, o in expected: if isinstance(o, BNode): assert (s, p, None) in result elif isinstance(s, BNode): assert (None, p, o) in result else: assert (s, p, o) in result
def as_graph(self, data: Union[Resource, List[Resource]], store_metadata: bool = False) -> Graph: return as_graph(data, store_metadata, self._model.context(), self._store.metadata_context, self._model.resolve_context)