001package org.hl7.fhir.r5.conformance.profile;
002
003import org.hl7.fhir.exceptions.FHIRException;
004import org.hl7.fhir.r5.model.ElementDefinition.ElementDefinitionBindingComponent;
005import org.hl7.fhir.r5.model.Resource;
006import org.hl7.fhir.utilities.MarkedToMoveToAdjunctPackage;
007import org.hl7.fhir.r5.model.StructureDefinition;
008
009@MarkedToMoveToAdjunctPackage
010public interface ProfileKnowledgeProvider {
011  boolean isDatatype(String typeSimple);
012  boolean isPrimitiveType(String typeSimple);
013  boolean isResource(String typeSimple);
014  boolean hasLinkFor(String typeSimple);
015  String getLinkFor(String corePath, String typeSimple);
016  BindingResolution resolveBinding(StructureDefinition def,
017    ElementDefinitionBindingComponent binding, String path) throws FHIRException;
018  BindingResolution resolveBinding(StructureDefinition def, String url, String path) throws FHIRException;
019  String getLinkForProfile(StructureDefinition profile, String url);
020  boolean prependLinks();
021  String getLinkForUrl(String corePath, String s);
022  String getCanonicalForDefaultContext();
023  public String getDefinitionsName(Resource r);
024}