use lazy_static::lazy_static;
use rdftk_iri::Iri;
use std::str::FromStr;
pub trait Featured {
fn supports_feature(&self, feature: &Iri) -> bool;
}
lazy_static! {
pub static ref FEATURE_COMBINED_DEFAULT: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/model.data_set/combined_default").unwrap()
;
pub static ref FEATURE_STMT_SUBJECT_COLLECTIONS: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/statements/subject_collections").unwrap();
pub static ref FEATURE_STMT_OBJECT_COLLECTIONS: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/statements/object_collections").unwrap();
pub static ref FEATURE_GRAPH_ALLOWS_NAMED: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/graph/named").unwrap();
pub static ref FEATURE_GRAPH_DUPLICATES: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/graph/duplicates").unwrap();
pub static ref FEATURE_RDF_STAR: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/graph/rdf_star").unwrap();
pub static ref FEATURE_N3_FORMULAE: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/graph/n3_formulae").unwrap();
pub static ref FEATURE_IDX_SUBJECT: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/subject").unwrap();
pub static ref FEATURE_IDX_PREDICATE: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/predicate").unwrap();
pub static ref FEATURE_IDX_OBJECT: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/object").unwrap();
pub static ref FEATURE_IDX_SUBJECT_PREDICATE: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/subject_predicate").unwrap()
;
pub static ref FEATURE_IDX_SUBJECT_PREDICATE_OBJECT: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/subject_predicate_object").unwrap()
;
pub static ref FEATURE_IDX_SUBJECT_OBJECT: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/subject_object").unwrap();
pub static ref FEATURE_IDX_PREDICATE_OBJECT: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/predicate_object").unwrap()
;
pub static ref FEATURE_IDX_GRAPH: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/graph").unwrap();
pub static ref FEATURE_IDX_SUBJECT_GRAPH: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/subject_graph").unwrap();
pub static ref FEATURE_IDX_PREDICATE_GRAPH: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/predicate_graph").unwrap();
pub static ref FEATURE_IDX_OBJECT_GRAPH: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/object_graph").unwrap();
pub static ref FEATURE_IDX_SUBJECT_PREDICATE_GRAPH: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/subject_predicate_graph").unwrap()
;
pub static ref FEATURE_IDX_SUBJECT_PREDICATE_OBJECT_GRAPH: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/subject_predicate_object_graph")
.unwrap()
;
pub static ref FEATURE_IDX_SUBJECT_OBJECT_GRAPH: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/subject_object_graph").unwrap()
;
pub static ref FEATURE_IDX_PREDICATE_OBJECT_GRAPH: Iri =
Iri::from_str("http://rust-rdftk.dev/feature/index/predicate_object_graph").unwrap()
;
}