public class FHIRPathEngine extends Object
| Modifier and Type | Class and Description |
|---|---|
class |
FHIRPathEngine.ElementDefinitionMatch |
static interface |
FHIRPathEngine.IEvaluationContext |
| Constructor and Description |
|---|
FHIRPathEngine(IWorkerContext worker) |
| Modifier and Type | Method and Description |
|---|---|
TypeDetails |
check(Object appContext,
String resourceType,
String context,
ExpressionNode expr)
check that paths referred to in the ExpressionNode are valid
xPathStartsWithValueRef is a hack work around for the fact that FHIR Path sometimes needs a different starting point than the xpath
returns a list of the possible types that might be returned by executing the ExpressionNode against a particular context
|
TypeDetails |
check(Object appContext,
String resourceType,
String context,
String expr) |
TypeDetails |
check(Object appContext,
StructureDefinition sd,
ExpressionNode expr) |
TypeDetails |
check(Object appContext,
StructureDefinition sd,
String context,
ExpressionNode expr) |
boolean |
convertToBoolean(List<Base> items)
worker routine for converting a set of objects to a boolean representation (for invariants)
|
String |
convertToString(List<Base> items)
worker routine for converting a set of objects to a string representation
|
List<Base> |
evaluate(Base base,
ExpressionNode ExpressionNode)
evaluate a path and return the matching elements
|
List<Base> |
evaluate(Base base,
String path)
evaluate a path and return the matching elements
|
List<Base> |
evaluate(Object appContext,
Base resource,
Base base,
ExpressionNode ExpressionNode)
evaluate a path and return the matching elements
|
List<Base> |
evaluate(Object appContext,
Resource resource,
Base base,
ExpressionNode ExpressionNode)
evaluate a path and return the matching elements
|
List<Base> |
evaluate(Object appContext,
Resource resource,
Base base,
String path)
evaluate a path and return the matching elements
|
boolean |
evaluateToBoolean(Base resource,
Base base,
ExpressionNode node)
evaluate a path and return true or false (e.g.
|
boolean |
evaluateToBoolean(Object appInfo,
Resource resource,
Base base,
ExpressionNode node)
evaluate a path and return true or false (e.g.
|
boolean |
evaluateToBoolean(Resource resource,
Base base,
ExpressionNode node)
evaluate a path and return true or false (e.g.
|
boolean |
evaluateToBoolean(Resource resource,
Base base,
String path)
evaluate a path and return true or false (e.g.
|
String |
evaluateToString(Base base,
String path)
evaluate a path and a string containing the outcome (for display)
|
String |
evaluateToString(Object appInfo,
Base resource,
Base base,
ExpressionNode node) |
String |
forLog() |
protected void |
getChildrenByName(Base item,
String name,
List<Base> result)
Given an item, return all the children that conform to the pattern described in name
Possible patterns:
- a simple name (which may be the base of a name with [] e.g.
|
FHIRPathEngine.IEvaluationContext |
getHostServices() |
boolean |
hasLog() |
ExpressionNode |
parse(FHIRLexer lexer)
Parse a path that is part of some other syntax
|
ExpressionNode |
parse(String path)
Parse a path for later use using execute
|
void |
setHostServices(FHIRPathEngine.IEvaluationContext constantResolver) |
String |
takeLog() |
public FHIRPathEngine(IWorkerContext worker)
worker - - used when validating paths (@check), and used doing value set membership when executing tests (once that's defined)public FHIRPathEngine.IEvaluationContext getHostServices()
public void setHostServices(FHIRPathEngine.IEvaluationContext constantResolver)
protected void getChildrenByName(Base item, String name, List<Base> result) throws FHIRException
item - name - result - FHIRExceptionpublic ExpressionNode parse(String path) throws FHIRLexer.FHIRLexerException
path - PathEngineExceptionExceptionFHIRLexer.FHIRLexerExceptionpublic ExpressionNode parse(FHIRLexer lexer) throws FHIRLexer.FHIRLexerException
path - PathEngineExceptionExceptionFHIRLexer.FHIRLexerExceptionpublic TypeDetails check(Object appContext, String resourceType, String context, ExpressionNode expr) throws FHIRLexer.FHIRLexerException, PathEngineException, DefinitionException
context - - the logical type against which this path is appliedpath - - the FHIR Path statement to checkDefinitionExceptionPathEngineExceptionFHIRLexer.FHIRLexerExceptionpublic TypeDetails check(Object appContext, StructureDefinition sd, String context, ExpressionNode expr) throws FHIRLexer.FHIRLexerException, PathEngineException, DefinitionException
public TypeDetails check(Object appContext, StructureDefinition sd, ExpressionNode expr) throws FHIRLexer.FHIRLexerException, PathEngineException, DefinitionException
public TypeDetails check(Object appContext, String resourceType, String context, String expr) throws FHIRLexer.FHIRLexerException, PathEngineException, DefinitionException
public List<Base> evaluate(Base base, ExpressionNode ExpressionNode) throws FHIRException
base - - the object against which the path is being evaluatedExpressionNode - - the parsed ExpressionNode statement to useFHIRExceptionpublic List<Base> evaluate(Base base, String path) throws FHIRException
base - - the object against which the path is being evaluatedpath - - the FHIR Path statement to useFHIRExceptionpublic List<Base> evaluate(Object appContext, Resource resource, Base base, ExpressionNode ExpressionNode) throws FHIRException
base - - the object against which the path is being evaluatedExpressionNode - - the parsed ExpressionNode statement to useFHIRExceptionpublic List<Base> evaluate(Object appContext, Base resource, Base base, ExpressionNode ExpressionNode) throws FHIRException
base - - the object against which the path is being evaluatedExpressionNode - - the parsed ExpressionNode statement to useFHIRExceptionpublic List<Base> evaluate(Object appContext, Resource resource, Base base, String path) throws FHIRException
base - - the object against which the path is being evaluatedpath - - the FHIR Path statement to useFHIRExceptionpublic boolean evaluateToBoolean(Resource resource, Base base, String path) throws FHIRException
base - - the object against which the path is being evaluatedpath - - the FHIR Path statement to useFHIRExceptionpublic boolean evaluateToBoolean(Resource resource, Base base, ExpressionNode node) throws FHIRException
base - - the object against which the path is being evaluatedpath - - the FHIR Path statement to useFHIRExceptionpublic boolean evaluateToBoolean(Object appInfo, Resource resource, Base base, ExpressionNode node) throws FHIRException
appinfo - - application contextbase - - the object against which the path is being evaluatedpath - - the FHIR Path statement to useFHIRExceptionpublic boolean evaluateToBoolean(Base resource, Base base, ExpressionNode node) throws FHIRException
base - - the object against which the path is being evaluatedpath - - the FHIR Path statement to useFHIRExceptionpublic String evaluateToString(Base base, String path) throws FHIRException
base - - the object against which the path is being evaluatedpath - - the FHIR Path statement to useFHIRExceptionpublic String evaluateToString(Object appInfo, Base resource, Base base, ExpressionNode node) throws FHIRException
FHIRExceptionpublic String convertToString(List<Base> items)
items - - result from @evaluatepublic boolean convertToBoolean(List<Base> items)
items - - result from @evaluatepublic boolean hasLog()
Copyright © 2014–2017 University Health Network. All rights reserved.