Skip to contents

While predicate() could be called directly, the intended use is to serve as a template to generate prefix-specific functions for each predicate known by the endpoint.

Arguments

x

formula. Describing the relationship subject ~ object.

what

Character scalar. Which predicate to use.

prefix

Character scalar. Name of the prefix the class is from. (Default: "")

...

additional arguments

Value

a triple object.

Examples

# predicate defines a triple:
predicate(
    x = sub_prefix:subject ~ ob_prefix:object,
    what = "predicate",
    prefix = "prefix"
    )
#> pallas::triple character S7_object.
#> subject             predicate         object               
#> sub_prefix:subject  prefix:predicate  ob_prefix:object  .  

# predicate() handles '?' symbols (Unlike regular formula objects).
predicate(a:b~c:d, what = "", prefix = "pa")
#> pallas::triple character S7_object.
#> subject  predicate  object     
#>     a:b        pa:     c:d  .  
predicate( ?b~c:d, what = "", prefix = "b")
#> pallas::triple character S7_object.
#> subject  predicate  object     
#>      ?b         b:     c:d  .  
predicate(a:b~ ?d, what = "", prefix = "c")
#> pallas::triple character S7_object.
#> subject  predicate  object     
#>     a:b         c:      ?d  .  
predicate( ?b~ ?d, what = "", prefix = "d")
#> pallas::triple character S7_object.
#> subject  predicate  object     
#>      ?b         d:      ?d  .