{"lfModel":{"1.4.31+24.0.4":{"\"Vocabulary: dev\\n\\nTerm: model value\\n\\tConcept Type: JSON (Type)\\nTerm: model\\n\\tReference Scheme: model value\\nTerm: vocabulary\\n\\tConcept Type: Short Text (Type)\\nTerm: model type\\n\\tConcept Type: Short Text (Type)\\n\\nFact Type: model is of vocabulary\\n\\tNecessity: Each model is of exactly one vocabulary\\nFact Type: model has model type\\n\\tNecessity: Each model has exactly one model type\\nFact Type: model has model value\\n\\tNecessity: Each model has exactly one model value\\n\"":["Model",["Vocabulary","Type",["Attributes"]],["Term","Integer","Type",["Attributes"]],["Term","Real","Type",["Attributes"]],["Term","Text","Type",["Attributes"]],["Term","Date","Type",["Attributes"]],["Term","Date Time","Type",["Attributes"]],["Term","Date Time Range","Type",["Attributes"]],["Term","Time","Type",["Attributes"]],["Term","Interval","Type",["Attributes"]],["Term","File","Type",["Attributes"]],["Term","Big Integer","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Serial","Type",["Attributes",["ConceptType",["Term","Integer","Type"]],["Note","An auto-incrementing 'Integer'."]]],["Term","Big Serial","Type",["Attributes",["ConceptType",["Term","Big Integer","Type"]],["Note","An auto-incrementing 'Big Integer'."]]],["Term","Case Insensitive Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that is compared case insensitively."]]],["Term","JSON","Type",["Attributes",["Note","A 'Text' type that will only allow valid JSON."]]],["Term","Hashed","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a hash."]]],["Term","SHA","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a sha256 hash."]]],["Term","Length","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Name","Current Time","Type",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"],["Attributes",["SynonymousForm",[["Term","Length","Type"],["Verb","is of",false],["Term","Text","Type"]]],["Note","Length in characters"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Text","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Length","Type"]],["AtomicFormulation",["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"]],["RoleBinding",["Term","Text","Type"],0],["RoleBinding",["Term","Length","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Text has exactly one Length"]]]]],["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"],["Attributes",["Note","Casts the JSON to a text string"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","JSON","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Text","Type"]],["AtomicFormulation",["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"]],["RoleBinding",["Term","JSON","Type"],0],["RoleBinding",["Term","Text","Type"],1]]]]],["StructuredEnglish","It is necessary that Each JSON is represented by exactly one Text"]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is equal to",false],["Term","Integer","Type",["Number",1]]]],["SynonymousForm",[["Term","Integer","Type",["Number",1]],["Verb","equals",false],["Term","Integer","Type",["Number",2]]]],["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","equals",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is equal to",false],["Term","Real","Type",["Number",1]]]],["SynonymousForm",[["Term","Real","Type",["Number",1]],["Verb","equals",false],["Term","Real","Type",["Number",2]]]],["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","equals",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is before",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is after",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is equal to",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is equal to",false],["Term","Date","Type",["Number",1]]]],["SynonymousForm",[["Term","Date","Type",["Number",1]],["Verb","equals",false],["Term","Date","Type",["Number",2]]]],["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","equals",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is before",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is after",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",1]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",1]],["Verb","equals",false],["Term","Date Time","Type",["Number",2]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","equals",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Real","Type"],["Verb","is less than",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than",false],["Term","Integer","Type"]]]]],["FactType",["Term","Real","Type"],["Verb","is less than or equal to",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than or equal to",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than or equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than or equal to",false],["Term","Integer","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is equal to",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Real","Type"],["Verb","equals",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Integer","Type"],["Verb","equals",false],["Term","Real","Type"]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is equal to",false],["Term","Text","Type",["Number",1]]]],["SynonymousForm",[["Term","Text","Type",["Number",1]],["Verb","equals",false],["Term","Text","Type",["Number",2]]]],["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","equals",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","starts with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","ends with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","contains",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is contained in",false],["Term","Text","Type",["Number",1]]]]]],["Term","Short Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]]]],["Term","Red Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Green Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Blue Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Alpha Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Color","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"],["Attributes",["SynonymousForm",[["Term","Red Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Red Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Red Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Red Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"],["Attributes",["SynonymousForm",[["Term","Green Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Green Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Green Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Green Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"],["Attributes",["SynonymousForm",[["Term","Blue Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Blue Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Blue Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Blue Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"],["Attributes",["SynonymousForm",[["Term","Alpha Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Alpha Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Alpha Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Alpha Component"]]]]],["Term","Filename","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","HRef","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Type","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Disposition","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Size","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","WebResource","Type",["Attributes",["ConceptType",["Term","JSON","Type"]],["Note","A 'JSON' type that will only allow valid JSON with an specific schema."]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"],["Attributes",["SynonymousForm",[["Term","Filename","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Filename","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Filename","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one Filename."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"],["Attributes",["SynonymousForm",[["Term","HRef","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","HRef","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","HRef","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one HRef."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"],["Attributes",["SynonymousForm",[["Term","Content Type","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Type","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Type","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Type."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"],["Attributes",["SynonymousForm",[["Term","Content Disposition","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Disposition","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Disposition","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Disposition."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"],["Attributes",["SynonymousForm",[["Term","Size","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Size","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Size","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Size."]]]]],["Vocabulary","Default",["Attributes"]],["Vocabulary","dev",["Attributes"]],["Term","model value","dev",["Attributes",["ConceptType",["Term","JSON","Type"]]]],["Term","model","dev",["Attributes",["ReferenceScheme",["Term","model value","dev"]]]],["Term","vocabulary","dev",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","model type","dev",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["FactType",["Term","model","dev"],["Verb","is of",false],["Term","vocabulary","dev"],["Attributes",["SynonymousForm",[["Term","vocabulary","dev"],["Verb","has",false],["Term","model","dev"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","model","dev"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","vocabulary","dev"]],["AtomicFormulation",["FactType",["Term","model","dev"],["Verb","is of",false],["Term","vocabulary","dev"]],["RoleBinding",["Term","model","dev"],0],["RoleBinding",["Term","vocabulary","dev"],1]]]]],["StructuredEnglish","It is necessary that Each model is of exactly one vocabulary"]]]]],["FactType",["Term","model","dev"],["Verb","has",false],["Term","model type","dev"],["Attributes",["SynonymousForm",[["Term","model type","dev"],["Verb","is of",false],["Term","model","dev"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","model","dev"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","model type","dev"]],["AtomicFormulation",["FactType",["Term","model","dev"],["Verb","has",false],["Term","model type","dev"]],["RoleBinding",["Term","model","dev"],0],["RoleBinding",["Term","model type","dev"],1]]]]],["StructuredEnglish","It is necessary that Each model has exactly one model type"]]]]],["FactType",["Term","model","dev"],["Verb","has",false],["Term","model value","dev"],["Attributes",["SynonymousForm",[["Term","model value","dev"],["Verb","is of",false],["Term","model","dev"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","model","dev"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","model value","dev"]],["AtomicFormulation",["FactType",["Term","model","dev"],["Verb","has",false],["Term","model value","dev"]],["RoleBinding",["Term","model","dev"],0],["RoleBinding",["Term","model value","dev"],1]]]]],["StructuredEnglish","It is necessary that Each model has exactly one model value"]]]]]],"\"Vocabulary: Auth\\n\\nTerm: username\\n\\tConcept Type: Short Text (Type)\\nTerm: password\\n\\tConcept Type: Hashed (Type)\\nTerm: name\\n\\tConcept Type: Text (Type)\\nTerm: key\\n\\tConcept Type: Short Text (Type)\\nTerm: expiry date\\n\\tConcept Type: Date Time (Type)\\nTerm: description\\n\\tConcept Type: Text (Type)\\n\\nTerm: permission\\n\\tReference Scheme: name\\nFact type: permission has name\\n\\tNecessity: Each permission has exactly one name.\\n\\tNecessity: Each name is of exactly one permission.\\n\\nTerm: role\\n\\tReference Scheme: name\\nFact type: role has name\\n\\tNecessity: Each role has exactly one name.\\n\\tNecessity: Each name is of exactly one role.\\nFact type: role has permission\\n\\nTerm: actor\\n\\nTerm: user\\n\\tReference Scheme: username\\n\\tConcept Type: actor\\nFact type: user has username\\n\\tNecessity: Each user has exactly one username.\\n\\tNecessity: Each username is of exactly one user.\\nFact type: user has password\\n\\tNecessity: Each user has exactly one password.\\nFact type: user has role\\n\\tNote: A 'user' will inherit all the 'permissions' that the 'role' has.\\n\\tTerm Form: user role\\n\\tFact type: user role has expiry date\\n\\t\\tNecessity: Each user role has at most one expiry date.\\nFact type: user has permission\\n\\tTerm Form: user permission\\n\\tFact type: user permission has expiry date\\n\\t\\tNecessity: Each user permission has at most one expiry date.\\n\\nTerm: api key\\n\\tReference Scheme: key\\nFact type: api key has key\\n\\tNecessity: each api key has exactly one key\\n\\tNecessity: each key is of exactly one api key\\nFact type: api key has expiry date\\n\\tNecessity: each api key has at most one expiry date.\\nFact type: api key has role\\n\\tNote: An 'api key' will inherit all the 'permissions' that the 'role' has.\\nFact type: api key has permission\\nFact type: api key is of actor\\n\\tNecessity: each api key is of exactly one actor\\nFact type: api key has name\\n\\tNecessity: Each api key has at most one name.\\nFact type: api key has description\\n\\tNecessity: Each api key has at most one description.\\n\"":["Model",["Vocabulary","Type",["Attributes"]],["Term","Integer","Type",["Attributes"]],["Term","Real","Type",["Attributes"]],["Term","Text","Type",["Attributes"]],["Term","Date","Type",["Attributes"]],["Term","Date Time","Type",["Attributes"]],["Term","Date Time Range","Type",["Attributes"]],["Term","Time","Type",["Attributes"]],["Term","Interval","Type",["Attributes"]],["Term","File","Type",["Attributes"]],["Term","Big Integer","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Serial","Type",["Attributes",["ConceptType",["Term","Integer","Type"]],["Note","An auto-incrementing 'Integer'."]]],["Term","Big Serial","Type",["Attributes",["ConceptType",["Term","Big Integer","Type"]],["Note","An auto-incrementing 'Big Integer'."]]],["Term","Case Insensitive Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that is compared case insensitively."]]],["Term","JSON","Type",["Attributes",["Note","A 'Text' type that will only allow valid JSON."]]],["Term","Hashed","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a hash."]]],["Term","SHA","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a sha256 hash."]]],["Term","Length","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Name","Current Time","Type",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"],["Attributes",["SynonymousForm",[["Term","Length","Type"],["Verb","is of",false],["Term","Text","Type"]]],["Note","Length in characters"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Text","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Length","Type"]],["AtomicFormulation",["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"]],["RoleBinding",["Term","Text","Type"],0],["RoleBinding",["Term","Length","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Text has exactly one Length"]]]]],["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"],["Attributes",["Note","Casts the JSON to a text string"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","JSON","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Text","Type"]],["AtomicFormulation",["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"]],["RoleBinding",["Term","JSON","Type"],0],["RoleBinding",["Term","Text","Type"],1]]]]],["StructuredEnglish","It is necessary that Each JSON is represented by exactly one Text"]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is equal to",false],["Term","Integer","Type",["Number",1]]]],["SynonymousForm",[["Term","Integer","Type",["Number",1]],["Verb","equals",false],["Term","Integer","Type",["Number",2]]]],["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","equals",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is equal to",false],["Term","Real","Type",["Number",1]]]],["SynonymousForm",[["Term","Real","Type",["Number",1]],["Verb","equals",false],["Term","Real","Type",["Number",2]]]],["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","equals",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is before",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is after",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is equal to",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is equal to",false],["Term","Date","Type",["Number",1]]]],["SynonymousForm",[["Term","Date","Type",["Number",1]],["Verb","equals",false],["Term","Date","Type",["Number",2]]]],["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","equals",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is before",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is after",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",1]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",1]],["Verb","equals",false],["Term","Date Time","Type",["Number",2]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","equals",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Real","Type"],["Verb","is less than",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than",false],["Term","Integer","Type"]]]]],["FactType",["Term","Real","Type"],["Verb","is less than or equal to",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than or equal to",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than or equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than or equal to",false],["Term","Integer","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is equal to",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Real","Type"],["Verb","equals",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Integer","Type"],["Verb","equals",false],["Term","Real","Type"]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is equal to",false],["Term","Text","Type",["Number",1]]]],["SynonymousForm",[["Term","Text","Type",["Number",1]],["Verb","equals",false],["Term","Text","Type",["Number",2]]]],["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","equals",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","starts with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","ends with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","contains",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is contained in",false],["Term","Text","Type",["Number",1]]]]]],["Term","Short Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]]]],["Term","Red Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Green Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Blue Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Alpha Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Color","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"],["Attributes",["SynonymousForm",[["Term","Red Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Red Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Red Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Red Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"],["Attributes",["SynonymousForm",[["Term","Green Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Green Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Green Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Green Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"],["Attributes",["SynonymousForm",[["Term","Blue Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Blue Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Blue Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Blue Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"],["Attributes",["SynonymousForm",[["Term","Alpha Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Alpha Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Alpha Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Alpha Component"]]]]],["Term","Filename","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","HRef","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Type","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Disposition","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Size","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","WebResource","Type",["Attributes",["ConceptType",["Term","JSON","Type"]],["Note","A 'JSON' type that will only allow valid JSON with an specific schema."]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"],["Attributes",["SynonymousForm",[["Term","Filename","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Filename","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Filename","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one Filename."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"],["Attributes",["SynonymousForm",[["Term","HRef","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","HRef","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","HRef","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one HRef."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"],["Attributes",["SynonymousForm",[["Term","Content Type","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Type","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Type","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Type."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"],["Attributes",["SynonymousForm",[["Term","Content Disposition","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Disposition","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Disposition","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Disposition."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"],["Attributes",["SynonymousForm",[["Term","Size","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Size","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Size","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Size."]]]]],["Vocabulary","Default",["Attributes"]],["Vocabulary","Auth",["Attributes"]],["Term","username","Auth",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","password","Auth",["Attributes",["ConceptType",["Term","Hashed","Type"]]]],["Term","name","Auth",["Attributes",["ConceptType",["Term","Text","Type"]]]],["Term","key","Auth",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","expiry date","Auth",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["Term","description","Auth",["Attributes",["ConceptType",["Term","Text","Type"]]]],["Term","permission","Auth",["Attributes",["ReferenceScheme",["Term","name","Auth"]]]],["FactType",["Term","permission","Auth"],["Verb","has",false],["Term","name","Auth"],["Attributes",["SynonymousForm",[["Term","name","Auth"],["Verb","is of",false],["Term","permission","Auth"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","permission","Auth"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","name","Auth"]],["AtomicFormulation",["FactType",["Term","permission","Auth"],["Verb","has",false],["Term","name","Auth"]],["RoleBinding",["Term","permission","Auth"],0],["RoleBinding",["Term","name","Auth"],1]]]]],["StructuredEnglish","It is necessary that Each permission has exactly one name."]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","name","Auth"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","permission","Auth"]],["AtomicFormulation",["FactType",["Term","name","Auth"],["Verb","is of",false],["Term","permission","Auth"]],["RoleBinding",["Term","name","Auth"],0],["RoleBinding",["Term","permission","Auth"],1]]]]],["StructuredEnglish","It is necessary that Each name is of exactly one permission."]]]]],["Term","role","Auth",["Attributes",["ReferenceScheme",["Term","name","Auth"]]]],["FactType",["Term","role","Auth"],["Verb","has",false],["Term","name","Auth"],["Attributes",["SynonymousForm",[["Term","name","Auth"],["Verb","is of",false],["Term","role","Auth"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","role","Auth"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","name","Auth"]],["AtomicFormulation",["FactType",["Term","role","Auth"],["Verb","has",false],["Term","name","Auth"]],["RoleBinding",["Term","role","Auth"],0],["RoleBinding",["Term","name","Auth"],1]]]]],["StructuredEnglish","It is necessary that Each role has exactly one name."]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","name","Auth"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","role","Auth"]],["AtomicFormulation",["FactType",["Term","name","Auth"],["Verb","is of",false],["Term","role","Auth"]],["RoleBinding",["Term","name","Auth"],0],["RoleBinding",["Term","role","Auth"],1]]]]],["StructuredEnglish","It is necessary that Each name is of exactly one role."]]]]],["FactType",["Term","role","Auth"],["Verb","has",false],["Term","permission","Auth"],["Attributes",["SynonymousForm",[["Term","permission","Auth"],["Verb","is of",false],["Term","role","Auth"]]]]],["Term","actor","Auth",["Attributes"]],["Term","user","Auth",["Attributes",["ReferenceScheme",["Term","username","Auth"]],["ConceptType",["Term","actor","Auth"]]]],["FactType",["Term","user","Auth"],["Verb","has",false],["Term","username","Auth"],["Attributes",["SynonymousForm",[["Term","username","Auth"],["Verb","is of",false],["Term","user","Auth"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","user","Auth"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","username","Auth"]],["AtomicFormulation",["FactType",["Term","user","Auth"],["Verb","has",false],["Term","username","Auth"]],["RoleBinding",["Term","user","Auth"],0],["RoleBinding",["Term","username","Auth"],1]]]]],["StructuredEnglish","It is necessary that Each user has exactly one username."]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","username","Auth"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","user","Auth"]],["AtomicFormulation",["FactType",["Term","username","Auth"],["Verb","is of",false],["Term","user","Auth"]],["RoleBinding",["Term","username","Auth"],0],["RoleBinding",["Term","user","Auth"],1]]]]],["StructuredEnglish","It is necessary that Each username is of exactly one user."]]]]],["FactType",["Term","user","Auth"],["Verb","has",false],["Term","password","Auth"],["Attributes",["SynonymousForm",[["Term","password","Auth"],["Verb","is of",false],["Term","user","Auth"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","user","Auth"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","password","Auth"]],["AtomicFormulation",["FactType",["Term","user","Auth"],["Verb","has",false],["Term","password","Auth"]],["RoleBinding",["Term","user","Auth"],0],["RoleBinding",["Term","password","Auth"],1]]]]],["StructuredEnglish","It is necessary that Each user has exactly one password."]]]]],["FactType",["Term","user","Auth"],["Verb","has",false],["Term","role","Auth"],["Attributes",["SynonymousForm",[["Term","role","Auth"],["Verb","is of",false],["Term","user","Auth"]]],["Note","A 'user' will inherit all the 'permissions' that the 'role' has."],["TermForm",["Term","user role","Auth"]]]],["FactType",["Term","user role","Auth"],["Verb","has",false],["Term","expiry date","Auth"],["Attributes",["SynonymousForm",[["Term","expiry date","Auth"],["Verb","is of",false],["Term","user role","Auth"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","user role","Auth"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","expiry date","Auth"]],["AtomicFormulation",["FactType",["Term","user role","Auth"],["Verb","has",false],["Term","expiry date","Auth"]],["RoleBinding",["Term","user role","Auth"],0],["RoleBinding",["Term","expiry date","Auth"],1]]]]],["StructuredEnglish","It is necessary that Each user role has at most one expiry date."]]]]],["FactType",["Term","user","Auth"],["Verb","has",false],["Term","permission","Auth"],["Attributes",["SynonymousForm",[["Term","permission","Auth"],["Verb","is of",false],["Term","user","Auth"]]],["TermForm",["Term","user permission","Auth"]]]],["FactType",["Term","user permission","Auth"],["Verb","has",false],["Term","expiry date","Auth"],["Attributes",["SynonymousForm",[["Term","expiry date","Auth"],["Verb","is of",false],["Term","user permission","Auth"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","user permission","Auth"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","expiry date","Auth"]],["AtomicFormulation",["FactType",["Term","user permission","Auth"],["Verb","has",false],["Term","expiry date","Auth"]],["RoleBinding",["Term","user permission","Auth"],0],["RoleBinding",["Term","expiry date","Auth"],1]]]]],["StructuredEnglish","It is necessary that Each user permission has at most one expiry date."]]]]],["Term","api key","Auth",["Attributes",["ReferenceScheme",["Term","key","Auth"]]]],["FactType",["Term","api key","Auth"],["Verb","has",false],["Term","key","Auth"],["Attributes",["SynonymousForm",[["Term","key","Auth"],["Verb","is of",false],["Term","api key","Auth"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","api key","Auth"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","key","Auth"]],["AtomicFormulation",["FactType",["Term","api key","Auth"],["Verb","has",false],["Term","key","Auth"]],["RoleBinding",["Term","api key","Auth"],0],["RoleBinding",["Term","key","Auth"],1]]]]],["StructuredEnglish","It is necessary that each api key has exactly one key"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","key","Auth"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","api key","Auth"]],["AtomicFormulation",["FactType",["Term","key","Auth"],["Verb","is of",false],["Term","api key","Auth"]],["RoleBinding",["Term","key","Auth"],0],["RoleBinding",["Term","api key","Auth"],1]]]]],["StructuredEnglish","It is necessary that each key is of exactly one api key"]]]]],["FactType",["Term","api key","Auth"],["Verb","has",false],["Term","expiry date","Auth"],["Attributes",["SynonymousForm",[["Term","expiry date","Auth"],["Verb","is of",false],["Term","api key","Auth"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","api key","Auth"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","expiry date","Auth"]],["AtomicFormulation",["FactType",["Term","api key","Auth"],["Verb","has",false],["Term","expiry date","Auth"]],["RoleBinding",["Term","api key","Auth"],0],["RoleBinding",["Term","expiry date","Auth"],1]]]]],["StructuredEnglish","It is necessary that each api key has at most one expiry date."]]]]],["FactType",["Term","api key","Auth"],["Verb","has",false],["Term","role","Auth"],["Attributes",["SynonymousForm",[["Term","role","Auth"],["Verb","is of",false],["Term","api key","Auth"]]],["Note","An 'api key' will inherit all the 'permissions' that the 'role' has."]]],["FactType",["Term","api key","Auth"],["Verb","has",false],["Term","permission","Auth"],["Attributes",["SynonymousForm",[["Term","permission","Auth"],["Verb","is of",false],["Term","api key","Auth"]]]]],["FactType",["Term","api key","Auth"],["Verb","is of",false],["Term","actor","Auth"],["Attributes",["SynonymousForm",[["Term","actor","Auth"],["Verb","has",false],["Term","api key","Auth"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","api key","Auth"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","actor","Auth"]],["AtomicFormulation",["FactType",["Term","api key","Auth"],["Verb","is of",false],["Term","actor","Auth"]],["RoleBinding",["Term","api key","Auth"],0],["RoleBinding",["Term","actor","Auth"],1]]]]],["StructuredEnglish","It is necessary that each api key is of exactly one actor"]]]]],["FactType",["Term","api key","Auth"],["Verb","has",false],["Term","name","Auth"],["Attributes",["SynonymousForm",[["Term","name","Auth"],["Verb","is of",false],["Term","api key","Auth"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","api key","Auth"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","name","Auth"]],["AtomicFormulation",["FactType",["Term","api key","Auth"],["Verb","has",false],["Term","name","Auth"]],["RoleBinding",["Term","api key","Auth"],0],["RoleBinding",["Term","name","Auth"],1]]]]],["StructuredEnglish","It is necessary that Each api key has at most one name."]]]]],["FactType",["Term","api key","Auth"],["Verb","has",false],["Term","description","Auth"],["Attributes",["SynonymousForm",[["Term","description","Auth"],["Verb","is of",false],["Term","api key","Auth"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","api key","Auth"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","description","Auth"]],["AtomicFormulation",["FactType",["Term","api key","Auth"],["Verb","has",false],["Term","description","Auth"]],["RoleBinding",["Term","api key","Auth"],0],["RoleBinding",["Term","description","Auth"],1]]]]],["StructuredEnglish","It is necessary that Each api key has at most one description."]]]]]],"\"Vocabulary: migrations\\n\\nTerm: model name\\n\\tConcept Type: Short Text (Type)\\nTerm: executed migrations\\n\\tConcept Type: JSON (Type)\\nTerm: lock time\\n\\tConcept Type: Date Time (Type)\\n\\nTerm: migration\\n\\tReference Scheme: model name\\n\\tDatabase ID Field: model name\\nFact Type: migration has model name\\n\\tNecessity: each migration has exactly one model name\\nFact Type: migration has executed migrations\\n\\tNecessity: each migration has exactly one executed migrations\\n\\nTerm: migration lock\\n\\tReference Scheme: model name\\n\\tDatabase ID Field: model name\\n\\nFact Type: migration lock has model name\\n\\tNecessity: each migration lock has exactly one model name\\n\\nTerm: migration key\\n\\tConcept Type: Short Text (Type)\\nTerm: start time\\n\\tConcept Type: Date Time (Type)\\nTerm: last run time\\n\\tConcept Type: Date Time (Type)\\nTerm: run count\\n\\tConcept Type: Integer (Type)\\nTerm: migrated row count\\n\\tConcept Type: Integer (Type)\\nTerm: error count\\n\\tConcept Type: Integer (Type)\\nTerm: converged time \\n\\tConcept Type: Date Time (Type)\\n\\n\\nTerm: migration status\\n\\tReference Scheme: migration key\\n\\tDatabase ID Field: migration key\\n\\nFact Type: migration status has migration key\\n\\tNecessity: each migration status has exactly one migration key\\n\\nFact Type: migration status has start time\\n\\tNecessity: each migration status has at most one start time\\n\\nFact Type: migration status has last run time\\n\\tNecessity: each migration status has at most one last run time\\n\\nFact Type: migration status has run count\\n\\tNecessity: each migration status has exactly one run count\\n\\nFact Type: migration status has migrated row count\\n\\tNecessity: each migration status has at most one migrated row count\\n\\nFact Type: migration status has error count\\n\\tNecessity: each migration status has at most one error count\\n\\nFact Type: migration status is backing off\\n\\nFact Type: migration status has converged time \\n\\tNecessity: each migration status has at most one converged time\\n\"":["Model",["Vocabulary","Type",["Attributes"]],["Term","Integer","Type",["Attributes"]],["Term","Real","Type",["Attributes"]],["Term","Text","Type",["Attributes"]],["Term","Date","Type",["Attributes"]],["Term","Date Time","Type",["Attributes"]],["Term","Date Time Range","Type",["Attributes"]],["Term","Time","Type",["Attributes"]],["Term","Interval","Type",["Attributes"]],["Term","File","Type",["Attributes"]],["Term","Big Integer","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Serial","Type",["Attributes",["ConceptType",["Term","Integer","Type"]],["Note","An auto-incrementing 'Integer'."]]],["Term","Big Serial","Type",["Attributes",["ConceptType",["Term","Big Integer","Type"]],["Note","An auto-incrementing 'Big Integer'."]]],["Term","Case Insensitive Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that is compared case insensitively."]]],["Term","JSON","Type",["Attributes",["Note","A 'Text' type that will only allow valid JSON."]]],["Term","Hashed","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a hash."]]],["Term","SHA","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a sha256 hash."]]],["Term","Length","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Name","Current Time","Type",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"],["Attributes",["SynonymousForm",[["Term","Length","Type"],["Verb","is of",false],["Term","Text","Type"]]],["Note","Length in characters"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Text","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Length","Type"]],["AtomicFormulation",["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"]],["RoleBinding",["Term","Text","Type"],0],["RoleBinding",["Term","Length","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Text has exactly one Length"]]]]],["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"],["Attributes",["Note","Casts the JSON to a text string"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","JSON","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Text","Type"]],["AtomicFormulation",["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"]],["RoleBinding",["Term","JSON","Type"],0],["RoleBinding",["Term","Text","Type"],1]]]]],["StructuredEnglish","It is necessary that Each JSON is represented by exactly one Text"]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is equal to",false],["Term","Integer","Type",["Number",1]]]],["SynonymousForm",[["Term","Integer","Type",["Number",1]],["Verb","equals",false],["Term","Integer","Type",["Number",2]]]],["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","equals",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is equal to",false],["Term","Real","Type",["Number",1]]]],["SynonymousForm",[["Term","Real","Type",["Number",1]],["Verb","equals",false],["Term","Real","Type",["Number",2]]]],["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","equals",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is before",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is after",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is equal to",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is equal to",false],["Term","Date","Type",["Number",1]]]],["SynonymousForm",[["Term","Date","Type",["Number",1]],["Verb","equals",false],["Term","Date","Type",["Number",2]]]],["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","equals",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is before",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is after",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",1]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",1]],["Verb","equals",false],["Term","Date Time","Type",["Number",2]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","equals",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Real","Type"],["Verb","is less than",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than",false],["Term","Integer","Type"]]]]],["FactType",["Term","Real","Type"],["Verb","is less than or equal to",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than or equal to",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than or equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than or equal to",false],["Term","Integer","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is equal to",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Real","Type"],["Verb","equals",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Integer","Type"],["Verb","equals",false],["Term","Real","Type"]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is equal to",false],["Term","Text","Type",["Number",1]]]],["SynonymousForm",[["Term","Text","Type",["Number",1]],["Verb","equals",false],["Term","Text","Type",["Number",2]]]],["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","equals",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","starts with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","ends with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","contains",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is contained in",false],["Term","Text","Type",["Number",1]]]]]],["Term","Short Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]]]],["Term","Red Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Green Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Blue Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Alpha Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Color","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"],["Attributes",["SynonymousForm",[["Term","Red Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Red Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Red Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Red Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"],["Attributes",["SynonymousForm",[["Term","Green Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Green Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Green Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Green Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"],["Attributes",["SynonymousForm",[["Term","Blue Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Blue Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Blue Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Blue Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"],["Attributes",["SynonymousForm",[["Term","Alpha Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Alpha Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Alpha Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Alpha Component"]]]]],["Term","Filename","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","HRef","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Type","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Disposition","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Size","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","WebResource","Type",["Attributes",["ConceptType",["Term","JSON","Type"]],["Note","A 'JSON' type that will only allow valid JSON with an specific schema."]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"],["Attributes",["SynonymousForm",[["Term","Filename","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Filename","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Filename","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one Filename."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"],["Attributes",["SynonymousForm",[["Term","HRef","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","HRef","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","HRef","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one HRef."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"],["Attributes",["SynonymousForm",[["Term","Content Type","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Type","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Type","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Type."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"],["Attributes",["SynonymousForm",[["Term","Content Disposition","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Disposition","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Disposition","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Disposition."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"],["Attributes",["SynonymousForm",[["Term","Size","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Size","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Size","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Size."]]]]],["Vocabulary","Default",["Attributes"]],["Vocabulary","migrations",["Attributes"]],["Term","model name","migrations",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","executed migrations","migrations",["Attributes",["ConceptType",["Term","JSON","Type"]]]],["Term","lock time","migrations",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["Term","migration","migrations",["Attributes",["ReferenceScheme",["Term","model name","migrations"]],["DatabaseIDField","model name"]]],["FactType",["Term","migration","migrations"],["Verb","has",false],["Term","model name","migrations"],["Attributes",["SynonymousForm",[["Term","model name","migrations"],["Verb","is of",false],["Term","migration","migrations"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","migration","migrations"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","model name","migrations"]],["AtomicFormulation",["FactType",["Term","migration","migrations"],["Verb","has",false],["Term","model name","migrations"]],["RoleBinding",["Term","migration","migrations"],0],["RoleBinding",["Term","model name","migrations"],1]]]]],["StructuredEnglish","It is necessary that each migration has exactly one model name"]]]]],["FactType",["Term","migration","migrations"],["Verb","has",false],["Term","executed migrations","migrations"],["Attributes",["SynonymousForm",[["Term","executed migrations","migrations"],["Verb","is of",false],["Term","migration","migrations"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","migration","migrations"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","executed migrations","migrations"]],["AtomicFormulation",["FactType",["Term","migration","migrations"],["Verb","has",false],["Term","executed migrations","migrations"]],["RoleBinding",["Term","migration","migrations"],0],["RoleBinding",["Term","executed migrations","migrations"],1]]]]],["StructuredEnglish","It is necessary that each migration has exactly one executed migrations"]]]]],["Term","migration lock","migrations",["Attributes",["ReferenceScheme",["Term","model name","migrations"]],["DatabaseIDField","model name"]]],["FactType",["Term","migration lock","migrations"],["Verb","has",false],["Term","model name","migrations"],["Attributes",["SynonymousForm",[["Term","model name","migrations"],["Verb","is of",false],["Term","migration lock","migrations"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","migration lock","migrations"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","model name","migrations"]],["AtomicFormulation",["FactType",["Term","migration lock","migrations"],["Verb","has",false],["Term","model name","migrations"]],["RoleBinding",["Term","migration lock","migrations"],0],["RoleBinding",["Term","model name","migrations"],1]]]]],["StructuredEnglish","It is necessary that each migration lock has exactly one model name"]]]]],["Term","migration key","migrations",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","start time","migrations",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["Term","last run time","migrations",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["Term","run count","migrations",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","migrated row count","migrations",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","error count","migrations",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","converged time","migrations",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["Term","migration status","migrations",["Attributes",["ReferenceScheme",["Term","migration key","migrations"]],["DatabaseIDField","migration key"]]],["FactType",["Term","migration status","migrations"],["Verb","has",false],["Term","migration key","migrations"],["Attributes",["SynonymousForm",[["Term","migration key","migrations"],["Verb","is of",false],["Term","migration status","migrations"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","migration status","migrations"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","migration key","migrations"]],["AtomicFormulation",["FactType",["Term","migration status","migrations"],["Verb","has",false],["Term","migration key","migrations"]],["RoleBinding",["Term","migration status","migrations"],0],["RoleBinding",["Term","migration key","migrations"],1]]]]],["StructuredEnglish","It is necessary that each migration status has exactly one migration key"]]]]],["FactType",["Term","migration status","migrations"],["Verb","has",false],["Term","start time","migrations"],["Attributes",["SynonymousForm",[["Term","start time","migrations"],["Verb","is of",false],["Term","migration status","migrations"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","migration status","migrations"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","start time","migrations"]],["AtomicFormulation",["FactType",["Term","migration status","migrations"],["Verb","has",false],["Term","start time","migrations"]],["RoleBinding",["Term","migration status","migrations"],0],["RoleBinding",["Term","start time","migrations"],1]]]]],["StructuredEnglish","It is necessary that each migration status has at most one start time"]]]]],["FactType",["Term","migration status","migrations"],["Verb","has",false],["Term","last run time","migrations"],["Attributes",["SynonymousForm",[["Term","last run time","migrations"],["Verb","is of",false],["Term","migration status","migrations"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","migration status","migrations"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","last run time","migrations"]],["AtomicFormulation",["FactType",["Term","migration status","migrations"],["Verb","has",false],["Term","last run time","migrations"]],["RoleBinding",["Term","migration status","migrations"],0],["RoleBinding",["Term","last run time","migrations"],1]]]]],["StructuredEnglish","It is necessary that each migration status has at most one last run time"]]]]],["FactType",["Term","migration status","migrations"],["Verb","has",false],["Term","run count","migrations"],["Attributes",["SynonymousForm",[["Term","run count","migrations"],["Verb","is of",false],["Term","migration status","migrations"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","migration status","migrations"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","run count","migrations"]],["AtomicFormulation",["FactType",["Term","migration status","migrations"],["Verb","has",false],["Term","run count","migrations"]],["RoleBinding",["Term","migration status","migrations"],0],["RoleBinding",["Term","run count","migrations"],1]]]]],["StructuredEnglish","It is necessary that each migration status has exactly one run count"]]]]],["FactType",["Term","migration status","migrations"],["Verb","has",false],["Term","migrated row count","migrations"],["Attributes",["SynonymousForm",[["Term","migrated row count","migrations"],["Verb","is of",false],["Term","migration status","migrations"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","migration status","migrations"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","migrated row count","migrations"]],["AtomicFormulation",["FactType",["Term","migration status","migrations"],["Verb","has",false],["Term","migrated row count","migrations"]],["RoleBinding",["Term","migration status","migrations"],0],["RoleBinding",["Term","migrated row count","migrations"],1]]]]],["StructuredEnglish","It is necessary that each migration status has at most one migrated row count"]]]]],["FactType",["Term","migration status","migrations"],["Verb","has",false],["Term","error count","migrations"],["Attributes",["SynonymousForm",[["Term","error count","migrations"],["Verb","is of",false],["Term","migration status","migrations"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","migration status","migrations"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","error count","migrations"]],["AtomicFormulation",["FactType",["Term","migration status","migrations"],["Verb","has",false],["Term","error count","migrations"]],["RoleBinding",["Term","migration status","migrations"],0],["RoleBinding",["Term","error count","migrations"],1]]]]],["StructuredEnglish","It is necessary that each migration status has at most one error count"]]]]],["FactType",["Term","migration status","migrations"],["Verb","is backing off",false],["Attributes"]],["FactType",["Term","migration status","migrations"],["Verb","has",false],["Term","converged time","migrations"],["Attributes",["SynonymousForm",[["Term","converged time","migrations"],["Verb","is of",false],["Term","migration status","migrations"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","migration status","migrations"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","converged time","migrations"]],["AtomicFormulation",["FactType",["Term","migration status","migrations"],["Verb","has",false],["Term","converged time","migrations"]],["RoleBinding",["Term","migration status","migrations"],0],["RoleBinding",["Term","converged time","migrations"],1]]]]],["StructuredEnglish","It is necessary that each migration status has at most one converged time"]]]]]],"\"Vocabulary: tasks\\n\\nTerm: id\\n\\tConcept Type: Big Serial (Type)\\nTerm: actor\\n\\tConcept Type: Integer (Type)\\nTerm: attempt count\\n\\tConcept Type: Integer (Type)\\nTerm: attempt limit\\n\\tConcept Type: Integer (Type)\\nTerm: cron expression\\n\\tConcept Type: Short Text (Type)\\nTerm: error message\\n\\tConcept Type: Short Text (Type)\\nTerm: handler\\n\\tConcept Type: Short Text (Type)\\nTerm: key\\n\\tConcept Type: Short Text (Type)\\nTerm: parameter set\\n\\tConcept Type: JSON (Type)\\nTerm: status\\n\\tConcept Type: Short Text (Type)\\nTerm: time\\n\\tConcept Type: Date Time (Type)\\n\\nTerm: task\\nFact type: task has id\\n\\tNecessity: each task has exactly one id\\nFact type: task has key\\n\\tNecessity: each task has at most one key\\nFact type: task is created by actor\\n\\tNecessity: each task is created by exactly one actor\\nFact type: task is executed by handler\\n\\tSynonymous Form: handler executes task\\n\\tNecessity: each task is executed by exactly one handler\\nFact type: task is executed with parameter set\\n\\tNecessity: each task is executed with at most one parameter set\\nFact type: task is scheduled with cron expression\\n\\tNecessity: each task is scheduled with at most one cron expression\\nFact type: task is scheduled to execute on time\\n\\tNecessity: each task is scheduled to execute on at most one time\\nFact type: task has status\\n\\tNecessity: each task has exactly one status\\n\\tDefinition: \\\"queued\\\" or \\\"cancelled\\\" or \\\"succeeded\\\" or \\\"failed\\\"\\nFact type: task started on time\\n\\tNecessity: each task started on at most one time\\nFact type: task ended on time\\n\\tNecessity: each task ended on at most one time\\nFact type: task has error message\\n\\tNecessity: each task has at most one error message\\nFact type: task has attempt count\\n\\tNecessity: each task has exactly one attempt count\\nFact type: task has attempt limit\\n\\tNecessity: each task has exactly one attempt limit\\n\\tNecessity: each task has an attempt limit that is greater than or equal to 1\\n\\nRule: It is necessary that each handler that executes a task that is scheduled with a cron expression and has a status that is equal to \\\"queued\\\", executes at most one task that is scheduled with a cron expression and has a status that is equal to \\\"queued\\\".\\n\"":["Model",["Vocabulary","Type",["Attributes"]],["Term","Integer","Type",["Attributes"]],["Term","Real","Type",["Attributes"]],["Term","Text","Type",["Attributes"]],["Term","Date","Type",["Attributes"]],["Term","Date Time","Type",["Attributes"]],["Term","Date Time Range","Type",["Attributes"]],["Term","Time","Type",["Attributes"]],["Term","Interval","Type",["Attributes"]],["Term","File","Type",["Attributes"]],["Term","Big Integer","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Serial","Type",["Attributes",["ConceptType",["Term","Integer","Type"]],["Note","An auto-incrementing 'Integer'."]]],["Term","Big Serial","Type",["Attributes",["ConceptType",["Term","Big Integer","Type"]],["Note","An auto-incrementing 'Big Integer'."]]],["Term","Case Insensitive Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that is compared case insensitively."]]],["Term","JSON","Type",["Attributes",["Note","A 'Text' type that will only allow valid JSON."]]],["Term","Hashed","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a hash."]]],["Term","SHA","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a sha256 hash."]]],["Term","Length","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Name","Current Time","Type",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"],["Attributes",["SynonymousForm",[["Term","Length","Type"],["Verb","is of",false],["Term","Text","Type"]]],["Note","Length in characters"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Text","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Length","Type"]],["AtomicFormulation",["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"]],["RoleBinding",["Term","Text","Type"],0],["RoleBinding",["Term","Length","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Text has exactly one Length"]]]]],["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"],["Attributes",["Note","Casts the JSON to a text string"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","JSON","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Text","Type"]],["AtomicFormulation",["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"]],["RoleBinding",["Term","JSON","Type"],0],["RoleBinding",["Term","Text","Type"],1]]]]],["StructuredEnglish","It is necessary that Each JSON is represented by exactly one Text"]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is equal to",false],["Term","Integer","Type",["Number",1]]]],["SynonymousForm",[["Term","Integer","Type",["Number",1]],["Verb","equals",false],["Term","Integer","Type",["Number",2]]]],["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","equals",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is equal to",false],["Term","Real","Type",["Number",1]]]],["SynonymousForm",[["Term","Real","Type",["Number",1]],["Verb","equals",false],["Term","Real","Type",["Number",2]]]],["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","equals",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is before",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is after",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is equal to",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is equal to",false],["Term","Date","Type",["Number",1]]]],["SynonymousForm",[["Term","Date","Type",["Number",1]],["Verb","equals",false],["Term","Date","Type",["Number",2]]]],["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","equals",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is before",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is after",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",1]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",1]],["Verb","equals",false],["Term","Date Time","Type",["Number",2]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","equals",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Real","Type"],["Verb","is less than",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than",false],["Term","Integer","Type"]]]]],["FactType",["Term","Real","Type"],["Verb","is less than or equal to",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than or equal to",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than or equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than or equal to",false],["Term","Integer","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is equal to",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Real","Type"],["Verb","equals",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Integer","Type"],["Verb","equals",false],["Term","Real","Type"]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is equal to",false],["Term","Text","Type",["Number",1]]]],["SynonymousForm",[["Term","Text","Type",["Number",1]],["Verb","equals",false],["Term","Text","Type",["Number",2]]]],["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","equals",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","starts with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","ends with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","contains",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is contained in",false],["Term","Text","Type",["Number",1]]]]]],["Term","Short Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]]]],["Term","Red Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Green Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Blue Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Alpha Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Color","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"],["Attributes",["SynonymousForm",[["Term","Red Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Red Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Red Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Red Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"],["Attributes",["SynonymousForm",[["Term","Green Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Green Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Green Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Green Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"],["Attributes",["SynonymousForm",[["Term","Blue Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Blue Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Blue Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Blue Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"],["Attributes",["SynonymousForm",[["Term","Alpha Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Alpha Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Alpha Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Alpha Component"]]]]],["Term","Filename","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","HRef","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Type","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Disposition","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Size","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","WebResource","Type",["Attributes",["ConceptType",["Term","JSON","Type"]],["Note","A 'JSON' type that will only allow valid JSON with an specific schema."]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"],["Attributes",["SynonymousForm",[["Term","Filename","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Filename","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Filename","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one Filename."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"],["Attributes",["SynonymousForm",[["Term","HRef","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","HRef","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","HRef","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one HRef."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"],["Attributes",["SynonymousForm",[["Term","Content Type","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Type","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Type","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Type."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"],["Attributes",["SynonymousForm",[["Term","Content Disposition","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Disposition","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Disposition","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Disposition."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"],["Attributes",["SynonymousForm",[["Term","Size","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Size","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Size","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Size."]]]]],["Vocabulary","Default",["Attributes"]],["Vocabulary","tasks",["Attributes"]],["Term","id","tasks",["Attributes",["ConceptType",["Term","Big Serial","Type"]]]],["Term","actor","tasks",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","attempt count","tasks",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","attempt limit","tasks",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","cron expression","tasks",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","error message","tasks",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","handler","tasks",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","key","tasks",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","parameter set","tasks",["Attributes",["ConceptType",["Term","JSON","Type"]]]],["Term","status","tasks",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","time","tasks",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["Term","task","tasks",["Attributes"]],["FactType",["Term","task","tasks"],["Verb","has",false],["Term","id","tasks"],["Attributes",["SynonymousForm",[["Term","id","tasks"],["Verb","is of",false],["Term","task","tasks"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","task","tasks"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","id","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","has",false],["Term","id","tasks"]],["RoleBinding",["Term","task","tasks"],0],["RoleBinding",["Term","id","tasks"],1]]]]],["StructuredEnglish","It is necessary that each task has exactly one id"]]]]],["FactType",["Term","task","tasks"],["Verb","has",false],["Term","key","tasks"],["Attributes",["SynonymousForm",[["Term","key","tasks"],["Verb","is of",false],["Term","task","tasks"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","task","tasks"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","key","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","has",false],["Term","key","tasks"]],["RoleBinding",["Term","task","tasks"],0],["RoleBinding",["Term","key","tasks"],1]]]]],["StructuredEnglish","It is necessary that each task has at most one key"]]]]],["FactType",["Term","task","tasks"],["Verb","is created by",false],["Term","actor","tasks"],["Attributes",["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","task","tasks"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","actor","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","is created by",false],["Term","actor","tasks"]],["RoleBinding",["Term","task","tasks"],0],["RoleBinding",["Term","actor","tasks"],1]]]]],["StructuredEnglish","It is necessary that each task is created by exactly one actor"]]]]],["FactType",["Term","task","tasks"],["Verb","is executed by",false],["Term","handler","tasks"],["Attributes",["SynonymousForm",[["Term","handler","tasks"],["Verb","executes",false],["Term","task","tasks"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","task","tasks"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","handler","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","is executed by",false],["Term","handler","tasks"]],["RoleBinding",["Term","task","tasks"],0],["RoleBinding",["Term","handler","tasks"],1]]]]],["StructuredEnglish","It is necessary that each task is executed by exactly one handler"]]]]],["FactType",["Term","task","tasks"],["Verb","is executed with",false],["Term","parameter set","tasks"],["Attributes",["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","task","tasks"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","parameter set","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","is executed with",false],["Term","parameter set","tasks"]],["RoleBinding",["Term","task","tasks"],0],["RoleBinding",["Term","parameter set","tasks"],1]]]]],["StructuredEnglish","It is necessary that each task is executed with at most one parameter set"]]]]],["FactType",["Term","task","tasks"],["Verb","is scheduled with",false],["Term","cron expression","tasks"],["Attributes",["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","task","tasks"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","cron expression","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","is scheduled with",false],["Term","cron expression","tasks"]],["RoleBinding",["Term","task","tasks"],0],["RoleBinding",["Term","cron expression","tasks"],1]]]]],["StructuredEnglish","It is necessary that each task is scheduled with at most one cron expression"]]]]],["FactType",["Term","task","tasks"],["Verb","is scheduled to execute on",false],["Term","time","tasks"],["Attributes",["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","task","tasks"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","time","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","is scheduled to execute on",false],["Term","time","tasks"]],["RoleBinding",["Term","task","tasks"],0],["RoleBinding",["Term","time","tasks"],1]]]]],["StructuredEnglish","It is necessary that each task is scheduled to execute on at most one time"]]]]],["FactType",["Term","task","tasks"],["Verb","has",false],["Term","status","tasks"],["Attributes",["SynonymousForm",[["Term","status","tasks"],["Verb","is of",false],["Term","task","tasks"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","task","tasks"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","status","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","has",false],["Term","status","tasks"]],["RoleBinding",["Term","task","tasks"],0],["RoleBinding",["Term","status","tasks"],1]]]]],["StructuredEnglish","It is necessary that each task has exactly one status"]]],["Definition",["Enum",["Text","queued"],["Text","cancelled"],["Text","succeeded"],["Text","failed"]]]]],["FactType",["Term","task","tasks"],["Verb","started on",false],["Term","time","tasks"],["Attributes",["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","task","tasks"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","time","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","started on",false],["Term","time","tasks"]],["RoleBinding",["Term","task","tasks"],0],["RoleBinding",["Term","time","tasks"],1]]]]],["StructuredEnglish","It is necessary that each task started on at most one time"]]]]],["FactType",["Term","task","tasks"],["Verb","ended on",false],["Term","time","tasks"],["Attributes",["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","task","tasks"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","time","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","ended on",false],["Term","time","tasks"]],["RoleBinding",["Term","task","tasks"],0],["RoleBinding",["Term","time","tasks"],1]]]]],["StructuredEnglish","It is necessary that each task ended on at most one time"]]]]],["FactType",["Term","task","tasks"],["Verb","has",false],["Term","error message","tasks"],["Attributes",["SynonymousForm",[["Term","error message","tasks"],["Verb","is of",false],["Term","task","tasks"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","task","tasks"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","error message","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","has",false],["Term","error message","tasks"]],["RoleBinding",["Term","task","tasks"],0],["RoleBinding",["Term","error message","tasks"],1]]]]],["StructuredEnglish","It is necessary that each task has at most one error message"]]]]],["FactType",["Term","task","tasks"],["Verb","has",false],["Term","attempt count","tasks"],["Attributes",["SynonymousForm",[["Term","attempt count","tasks"],["Verb","is of",false],["Term","task","tasks"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","task","tasks"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","attempt count","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","has",false],["Term","attempt count","tasks"]],["RoleBinding",["Term","task","tasks"],0],["RoleBinding",["Term","attempt count","tasks"],1]]]]],["StructuredEnglish","It is necessary that each task has exactly one attempt count"]]]]],["FactType",["Term","task","tasks"],["Verb","has",false],["Term","attempt limit","tasks"],["Attributes",["SynonymousForm",[["Term","attempt limit","tasks"],["Verb","is of",false],["Term","task","tasks"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","task","tasks"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","attempt limit","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","has",false],["Term","attempt limit","tasks"]],["RoleBinding",["Term","task","tasks"],0],["RoleBinding",["Term","attempt limit","tasks"],1]]]]],["StructuredEnglish","It is necessary that each task has exactly one attempt limit"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","task","tasks"]],["ExistentialQuantification",["Variable",["Number",1],["Term","attempt limit","tasks"],["AtomicFormulation",["FactType",["Term","attempt limit","tasks"],["Verb","is greater than or equal to",false],["Term","Integer","Type",["Integer",1]]],["RoleBinding",["Term","attempt limit","tasks"],1],["RoleBinding",["Term","Integer","Type",["Integer",1]],["Integer",1]]]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","has",false],["Term","attempt limit","tasks"]],["RoleBinding",["Term","task","tasks"],0],["RoleBinding",["Term","attempt limit","tasks"],1]]]]],["StructuredEnglish","It is necessary that each task has an attempt limit that is greater than or equal to 1"]]]]],["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","handler","tasks"],["ExistentialQuantification",["Variable",["Number",1],["Term","task","tasks"],["Conjunction",["ExistentialQuantification",["Variable",["Number",2],["Term","cron expression","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","is scheduled with",false],["Term","cron expression","tasks"]],["RoleBinding",["Term","task","tasks"],1],["RoleBinding",["Term","cron expression","tasks"],2]]],["ExistentialQuantification",["Variable",["Number",3],["Term","status","tasks"],["AtomicFormulation",["FactType",["Term","status","tasks"],["Verb","is equal to",false],["Term","Text","Type",["Text","queued"]]],["RoleBinding",["Term","status","tasks"],3],["RoleBinding",["Term","Text","Type",["Text","queued"]],["Text","queued"]]]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","has",false],["Term","status","tasks"]],["RoleBinding",["Term","task","tasks"],1],["RoleBinding",["Term","status","tasks"],3]]]]],["AtomicFormulation",["FactType",["Term","handler","tasks"],["Verb","executes",false],["Term","task","tasks"]],["RoleBinding",["Term","handler","tasks"],0],["RoleBinding",["Term","task","tasks"],1]]]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",4],["Term","task","tasks"],["Conjunction",["ExistentialQuantification",["Variable",["Number",5],["Term","cron expression","tasks"]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","is scheduled with",false],["Term","cron expression","tasks"]],["RoleBinding",["Term","task","tasks"],4],["RoleBinding",["Term","cron expression","tasks"],5]]],["ExistentialQuantification",["Variable",["Number",6],["Term","status","tasks"],["AtomicFormulation",["FactType",["Term","status","tasks"],["Verb","is equal to",false],["Term","Text","Type",["Text","queued"]]],["RoleBinding",["Term","status","tasks"],6],["RoleBinding",["Term","Text","Type",["Text","queued"]],["Text","queued"]]]],["AtomicFormulation",["FactType",["Term","task","tasks"],["Verb","has",false],["Term","status","tasks"]],["RoleBinding",["Term","task","tasks"],4],["RoleBinding",["Term","status","tasks"],6]]]]],["AtomicFormulation",["FactType",["Term","handler","tasks"],["Verb","executes",false],["Term","task","tasks"]],["RoleBinding",["Term","handler","tasks"],0],["RoleBinding",["Term","task","tasks"],4]]]]],["StructuredEnglish","It is necessary that each handler that executes a task that is scheduled with a cron expression and has a status that is equal to \"queued\", executes at most one task that is scheduled with a cron expression and has a status that is equal to \"queued\"."]]],"\"Vocabulary: webresource\\n\\nTerm: actor\\n\\tConcept Type: Integer (Type)\\nTerm: expiry date\\n\\tConcept Type: Date Time (Type)\\nTerm: uuid\\n\\tConcept Type: Short Text (Type)\\nTerm: resource name\\n\\tConcept Type: Short Text (Type)\\nTerm: field name\\n\\tConcept Type: Short Text (Type)\\nTerm: resource id\\n\\tConcept Type: Integer (Type)\\nTerm: upload id\\n\\tConcept Type: Short Text (Type)\\nTerm: file key\\n\\tConcept Type: Short Text (Type)\\nTerm: status\\n\\tConcept Type: Short Text (Type)\\nTerm: filename\\n\\tConcept Type: Short Text (Type)\\nTerm: content type\\n\\tConcept Type: Short Text (Type)\\nTerm: size\\n\\tConcept Type: Big Integer (Type)\\nTerm: chunk size\\n\\tConcept Type: Integer (Type)\\nTerm: valid until date\\n\\tConcept Type: Date Time (Type)\\n\\nTerm: multipart upload\\nFact type: multipart upload has uuid\\n\\tNecessity: each multipart upload has exactly one uuid\\n\\tNecessity: each uuid is of exactly one multipart upload\\nFact type: multipart upload has resource name\\n\\tNecessity: each multipart upload has exactly one resource name\\nFact type: multipart upload has field name\\n\\tNecessity: each multipart upload has exactly one field name\\nFact type: multipart upload has resource id\\n\\tNecessity: each multipart upload has exactly one resource id\\nFact type: multipart upload has upload id\\n\\tNecessity: each multipart upload has exactly one upload id\\nFact type: multipart upload has file key\\n\\tNecessity: each multipart upload has exactly one file key\\nFact type: multipart upload has status\\n\\tNecessity: each multipart upload has exactly one status\\n\\tDefinition: \\\"pending\\\" or \\\"completed\\\" or \\\"cancelled\\\"\\nFact type: multipart upload has filename\\n\\tNecessity: each multipart upload has exactly one filename\\nFact type: multipart upload has content type\\n\\tNecessity: each multipart upload has exactly one content type\\nFact type: multipart upload has size\\n\\tNecessity: each multipart upload has exactly one size\\nFact type: multipart upload has chunk size\\n\\tNecessity: each multipart upload has exactly one chunk size\\nFact type: multipart upload has expiry date\\n\\tNecessity: each multipart upload has exactly one expiry date\\nFact type: multipart upload is created by actor\\n\\tNecessity: each multipart upload is created by at most one actor\\n\"":["Model",["Vocabulary","Type",["Attributes"]],["Term","Integer","Type",["Attributes"]],["Term","Real","Type",["Attributes"]],["Term","Text","Type",["Attributes"]],["Term","Date","Type",["Attributes"]],["Term","Date Time","Type",["Attributes"]],["Term","Date Time Range","Type",["Attributes"]],["Term","Time","Type",["Attributes"]],["Term","Interval","Type",["Attributes"]],["Term","File","Type",["Attributes"]],["Term","Big Integer","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Serial","Type",["Attributes",["ConceptType",["Term","Integer","Type"]],["Note","An auto-incrementing 'Integer'."]]],["Term","Big Serial","Type",["Attributes",["ConceptType",["Term","Big Integer","Type"]],["Note","An auto-incrementing 'Big Integer'."]]],["Term","Case Insensitive Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that is compared case insensitively."]]],["Term","JSON","Type",["Attributes",["Note","A 'Text' type that will only allow valid JSON."]]],["Term","Hashed","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a hash."]]],["Term","SHA","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a sha256 hash."]]],["Term","Length","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Name","Current Time","Type",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"],["Attributes",["SynonymousForm",[["Term","Length","Type"],["Verb","is of",false],["Term","Text","Type"]]],["Note","Length in characters"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Text","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Length","Type"]],["AtomicFormulation",["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"]],["RoleBinding",["Term","Text","Type"],0],["RoleBinding",["Term","Length","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Text has exactly one Length"]]]]],["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"],["Attributes",["Note","Casts the JSON to a text string"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","JSON","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Text","Type"]],["AtomicFormulation",["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"]],["RoleBinding",["Term","JSON","Type"],0],["RoleBinding",["Term","Text","Type"],1]]]]],["StructuredEnglish","It is necessary that Each JSON is represented by exactly one Text"]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is equal to",false],["Term","Integer","Type",["Number",1]]]],["SynonymousForm",[["Term","Integer","Type",["Number",1]],["Verb","equals",false],["Term","Integer","Type",["Number",2]]]],["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","equals",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is equal to",false],["Term","Real","Type",["Number",1]]]],["SynonymousForm",[["Term","Real","Type",["Number",1]],["Verb","equals",false],["Term","Real","Type",["Number",2]]]],["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","equals",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is before",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is after",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is equal to",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is equal to",false],["Term","Date","Type",["Number",1]]]],["SynonymousForm",[["Term","Date","Type",["Number",1]],["Verb","equals",false],["Term","Date","Type",["Number",2]]]],["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","equals",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is before",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is after",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",1]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",1]],["Verb","equals",false],["Term","Date Time","Type",["Number",2]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","equals",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Real","Type"],["Verb","is less than",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than",false],["Term","Integer","Type"]]]]],["FactType",["Term","Real","Type"],["Verb","is less than or equal to",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than or equal to",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than or equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than or equal to",false],["Term","Integer","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is equal to",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Real","Type"],["Verb","equals",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Integer","Type"],["Verb","equals",false],["Term","Real","Type"]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is equal to",false],["Term","Text","Type",["Number",1]]]],["SynonymousForm",[["Term","Text","Type",["Number",1]],["Verb","equals",false],["Term","Text","Type",["Number",2]]]],["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","equals",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","starts with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","ends with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","contains",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is contained in",false],["Term","Text","Type",["Number",1]]]]]],["Term","Short Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]]]],["Term","Red Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Green Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Blue Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Alpha Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Color","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"],["Attributes",["SynonymousForm",[["Term","Red Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Red Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Red Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Red Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"],["Attributes",["SynonymousForm",[["Term","Green Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Green Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Green Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Green Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"],["Attributes",["SynonymousForm",[["Term","Blue Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Blue Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Blue Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Blue Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"],["Attributes",["SynonymousForm",[["Term","Alpha Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Alpha Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Alpha Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Alpha Component"]]]]],["Term","Filename","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","HRef","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Type","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Disposition","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Size","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","WebResource","Type",["Attributes",["ConceptType",["Term","JSON","Type"]],["Note","A 'JSON' type that will only allow valid JSON with an specific schema."]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"],["Attributes",["SynonymousForm",[["Term","Filename","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Filename","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Filename","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one Filename."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"],["Attributes",["SynonymousForm",[["Term","HRef","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","HRef","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","HRef","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one HRef."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"],["Attributes",["SynonymousForm",[["Term","Content Type","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Type","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Type","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Type."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"],["Attributes",["SynonymousForm",[["Term","Content Disposition","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Disposition","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Disposition","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Disposition."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"],["Attributes",["SynonymousForm",[["Term","Size","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Size","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Size","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Size."]]]]],["Vocabulary","Default",["Attributes"]],["Vocabulary","webresource",["Attributes"]],["Term","actor","webresource",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","expiry date","webresource",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["Term","uuid","webresource",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","resource name","webresource",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","field name","webresource",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","resource id","webresource",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","upload id","webresource",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","file key","webresource",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","status","webresource",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","filename","webresource",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","content type","webresource",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","size","webresource",["Attributes",["ConceptType",["Term","Big Integer","Type"]]]],["Term","chunk size","webresource",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","valid until date","webresource",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["Term","multipart upload","webresource",["Attributes"]],["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","uuid","webresource"],["Attributes",["SynonymousForm",[["Term","uuid","webresource"],["Verb","is of",false],["Term","multipart upload","webresource"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","multipart upload","webresource"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","uuid","webresource"]],["AtomicFormulation",["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","uuid","webresource"]],["RoleBinding",["Term","multipart upload","webresource"],0],["RoleBinding",["Term","uuid","webresource"],1]]]]],["StructuredEnglish","It is necessary that each multipart upload has exactly one uuid"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","uuid","webresource"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","multipart upload","webresource"]],["AtomicFormulation",["FactType",["Term","uuid","webresource"],["Verb","is of",false],["Term","multipart upload","webresource"]],["RoleBinding",["Term","uuid","webresource"],0],["RoleBinding",["Term","multipart upload","webresource"],1]]]]],["StructuredEnglish","It is necessary that each uuid is of exactly one multipart upload"]]]]],["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","resource name","webresource"],["Attributes",["SynonymousForm",[["Term","resource name","webresource"],["Verb","is of",false],["Term","multipart upload","webresource"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","multipart upload","webresource"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","resource name","webresource"]],["AtomicFormulation",["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","resource name","webresource"]],["RoleBinding",["Term","multipart upload","webresource"],0],["RoleBinding",["Term","resource name","webresource"],1]]]]],["StructuredEnglish","It is necessary that each multipart upload has exactly one resource name"]]]]],["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","field name","webresource"],["Attributes",["SynonymousForm",[["Term","field name","webresource"],["Verb","is of",false],["Term","multipart upload","webresource"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","multipart upload","webresource"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","field name","webresource"]],["AtomicFormulation",["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","field name","webresource"]],["RoleBinding",["Term","multipart upload","webresource"],0],["RoleBinding",["Term","field name","webresource"],1]]]]],["StructuredEnglish","It is necessary that each multipart upload has exactly one field name"]]]]],["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","resource id","webresource"],["Attributes",["SynonymousForm",[["Term","resource id","webresource"],["Verb","is of",false],["Term","multipart upload","webresource"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","multipart upload","webresource"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","resource id","webresource"]],["AtomicFormulation",["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","resource id","webresource"]],["RoleBinding",["Term","multipart upload","webresource"],0],["RoleBinding",["Term","resource id","webresource"],1]]]]],["StructuredEnglish","It is necessary that each multipart upload has exactly one resource id"]]]]],["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","upload id","webresource"],["Attributes",["SynonymousForm",[["Term","upload id","webresource"],["Verb","is of",false],["Term","multipart upload","webresource"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","multipart upload","webresource"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","upload id","webresource"]],["AtomicFormulation",["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","upload id","webresource"]],["RoleBinding",["Term","multipart upload","webresource"],0],["RoleBinding",["Term","upload id","webresource"],1]]]]],["StructuredEnglish","It is necessary that each multipart upload has exactly one upload id"]]]]],["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","file key","webresource"],["Attributes",["SynonymousForm",[["Term","file key","webresource"],["Verb","is of",false],["Term","multipart upload","webresource"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","multipart upload","webresource"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","file key","webresource"]],["AtomicFormulation",["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","file key","webresource"]],["RoleBinding",["Term","multipart upload","webresource"],0],["RoleBinding",["Term","file key","webresource"],1]]]]],["StructuredEnglish","It is necessary that each multipart upload has exactly one file key"]]]]],["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","status","webresource"],["Attributes",["SynonymousForm",[["Term","status","webresource"],["Verb","is of",false],["Term","multipart upload","webresource"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","multipart upload","webresource"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","status","webresource"]],["AtomicFormulation",["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","status","webresource"]],["RoleBinding",["Term","multipart upload","webresource"],0],["RoleBinding",["Term","status","webresource"],1]]]]],["StructuredEnglish","It is necessary that each multipart upload has exactly one status"]]],["Definition",["Enum",["Text","pending"],["Text","completed"],["Text","cancelled"]]]]],["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","filename","webresource"],["Attributes",["SynonymousForm",[["Term","filename","webresource"],["Verb","is of",false],["Term","multipart upload","webresource"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","multipart upload","webresource"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","filename","webresource"]],["AtomicFormulation",["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","filename","webresource"]],["RoleBinding",["Term","multipart upload","webresource"],0],["RoleBinding",["Term","filename","webresource"],1]]]]],["StructuredEnglish","It is necessary that each multipart upload has exactly one filename"]]]]],["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","content type","webresource"],["Attributes",["SynonymousForm",[["Term","content type","webresource"],["Verb","is of",false],["Term","multipart upload","webresource"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","multipart upload","webresource"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","content type","webresource"]],["AtomicFormulation",["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","content type","webresource"]],["RoleBinding",["Term","multipart upload","webresource"],0],["RoleBinding",["Term","content type","webresource"],1]]]]],["StructuredEnglish","It is necessary that each multipart upload has exactly one content type"]]]]],["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","size","webresource"],["Attributes",["SynonymousForm",[["Term","size","webresource"],["Verb","is of",false],["Term","multipart upload","webresource"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","multipart upload","webresource"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","size","webresource"]],["AtomicFormulation",["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","size","webresource"]],["RoleBinding",["Term","multipart upload","webresource"],0],["RoleBinding",["Term","size","webresource"],1]]]]],["StructuredEnglish","It is necessary that each multipart upload has exactly one size"]]]]],["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","chunk size","webresource"],["Attributes",["SynonymousForm",[["Term","chunk size","webresource"],["Verb","is of",false],["Term","multipart upload","webresource"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","multipart upload","webresource"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","chunk size","webresource"]],["AtomicFormulation",["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","chunk size","webresource"]],["RoleBinding",["Term","multipart upload","webresource"],0],["RoleBinding",["Term","chunk size","webresource"],1]]]]],["StructuredEnglish","It is necessary that each multipart upload has exactly one chunk size"]]]]],["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","expiry date","webresource"],["Attributes",["SynonymousForm",[["Term","expiry date","webresource"],["Verb","is of",false],["Term","multipart upload","webresource"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","multipart upload","webresource"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","expiry date","webresource"]],["AtomicFormulation",["FactType",["Term","multipart upload","webresource"],["Verb","has",false],["Term","expiry date","webresource"]],["RoleBinding",["Term","multipart upload","webresource"],0],["RoleBinding",["Term","expiry date","webresource"],1]]]]],["StructuredEnglish","It is necessary that each multipart upload has exactly one expiry date"]]]]],["FactType",["Term","multipart upload","webresource"],["Verb","is created by",false],["Term","actor","webresource"],["Attributes",["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","multipart upload","webresource"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","actor","webresource"]],["AtomicFormulation",["FactType",["Term","multipart upload","webresource"],["Verb","is created by",false],["Term","actor","webresource"]],["RoleBinding",["Term","multipart upload","webresource"],0],["RoleBinding",["Term","actor","webresource"],1]]]]],["StructuredEnglish","It is necessary that each multipart upload is created by at most one actor"]]]]]],"\"Vocabulary: example\\n\\nTerm: name\\n\\t Concept Type: Short Text (Type)\\n\\nTerm: note\\n\\t Concept Type: Text (Type)\\n\\nTerm: type\\n\\t Concept Type: Short Text (Type)\\n\\nTerm: device\\n\\nFact Type: device has name\\n\\t Necessity: each device has at most one name.\\n\\nFact Type: device has note\\n\\t Necessity: each device has at most one note.\\n\\nFact Type: device has type\\n\\t Necessity: each device has exactly one type.\\n\\nTerm: deviceb\\n\\nFact Type: deviceb has name\\n\\t Necessity: each deviceb has at most one name.\\n\\nFact Type: deviceb has note\\n\\t Necessity: each deviceb has at most one note.\\n\\nFact Type: deviceb has type\\n\\t Necessity: each deviceb has exactly one type.\"":["Model",["Vocabulary","Type",["Attributes"]],["Term","Integer","Type",["Attributes"]],["Term","Real","Type",["Attributes"]],["Term","Text","Type",["Attributes"]],["Term","Date","Type",["Attributes"]],["Term","Date Time","Type",["Attributes"]],["Term","Date Time Range","Type",["Attributes"]],["Term","Time","Type",["Attributes"]],["Term","Interval","Type",["Attributes"]],["Term","File","Type",["Attributes"]],["Term","Big Integer","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Serial","Type",["Attributes",["ConceptType",["Term","Integer","Type"]],["Note","An auto-incrementing 'Integer'."]]],["Term","Big Serial","Type",["Attributes",["ConceptType",["Term","Big Integer","Type"]],["Note","An auto-incrementing 'Big Integer'."]]],["Term","Case Insensitive Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that is compared case insensitively."]]],["Term","JSON","Type",["Attributes",["Note","A 'Text' type that will only allow valid JSON."]]],["Term","Hashed","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a hash."]]],["Term","SHA","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a sha256 hash."]]],["Term","Length","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Name","Current Time","Type",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"],["Attributes",["SynonymousForm",[["Term","Length","Type"],["Verb","is of",false],["Term","Text","Type"]]],["Note","Length in characters"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Text","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Length","Type"]],["AtomicFormulation",["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"]],["RoleBinding",["Term","Text","Type"],0],["RoleBinding",["Term","Length","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Text has exactly one Length"]]]]],["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"],["Attributes",["Note","Casts the JSON to a text string"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","JSON","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Text","Type"]],["AtomicFormulation",["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"]],["RoleBinding",["Term","JSON","Type"],0],["RoleBinding",["Term","Text","Type"],1]]]]],["StructuredEnglish","It is necessary that Each JSON is represented by exactly one Text"]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is equal to",false],["Term","Integer","Type",["Number",1]]]],["SynonymousForm",[["Term","Integer","Type",["Number",1]],["Verb","equals",false],["Term","Integer","Type",["Number",2]]]],["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","equals",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is equal to",false],["Term","Real","Type",["Number",1]]]],["SynonymousForm",[["Term","Real","Type",["Number",1]],["Verb","equals",false],["Term","Real","Type",["Number",2]]]],["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","equals",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is before",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is after",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is equal to",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is equal to",false],["Term","Date","Type",["Number",1]]]],["SynonymousForm",[["Term","Date","Type",["Number",1]],["Verb","equals",false],["Term","Date","Type",["Number",2]]]],["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","equals",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is before",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is after",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",1]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",1]],["Verb","equals",false],["Term","Date Time","Type",["Number",2]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","equals",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Real","Type"],["Verb","is less than",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than",false],["Term","Integer","Type"]]]]],["FactType",["Term","Real","Type"],["Verb","is less than or equal to",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than or equal to",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than or equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than or equal to",false],["Term","Integer","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is equal to",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Real","Type"],["Verb","equals",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Integer","Type"],["Verb","equals",false],["Term","Real","Type"]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is equal to",false],["Term","Text","Type",["Number",1]]]],["SynonymousForm",[["Term","Text","Type",["Number",1]],["Verb","equals",false],["Term","Text","Type",["Number",2]]]],["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","equals",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","starts with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","ends with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","contains",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is contained in",false],["Term","Text","Type",["Number",1]]]]]],["Term","Short Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]]]],["Term","Red Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Green Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Blue Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Alpha Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Color","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"],["Attributes",["SynonymousForm",[["Term","Red Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Red Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Red Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Red Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"],["Attributes",["SynonymousForm",[["Term","Green Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Green Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Green Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Green Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"],["Attributes",["SynonymousForm",[["Term","Blue Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Blue Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Blue Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Blue Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"],["Attributes",["SynonymousForm",[["Term","Alpha Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Alpha Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Alpha Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Alpha Component"]]]]],["Term","Filename","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","HRef","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Type","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Disposition","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Size","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","WebResource","Type",["Attributes",["ConceptType",["Term","JSON","Type"]],["Note","A 'JSON' type that will only allow valid JSON with an specific schema."]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"],["Attributes",["SynonymousForm",[["Term","Filename","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Filename","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Filename","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one Filename."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"],["Attributes",["SynonymousForm",[["Term","HRef","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","HRef","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","HRef","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one HRef."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"],["Attributes",["SynonymousForm",[["Term","Content Type","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Type","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Type","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Type."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"],["Attributes",["SynonymousForm",[["Term","Content Disposition","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Disposition","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Disposition","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Disposition."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"],["Attributes",["SynonymousForm",[["Term","Size","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Size","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Size","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Size."]]]]],["Vocabulary","Default",["Attributes"]],["Vocabulary","example",["Attributes"]],["Term","name","example",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","note","example",["Attributes",["ConceptType",["Term","Text","Type"]]]],["Term","type","example",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","device","example",["Attributes"]],["FactType",["Term","device","example"],["Verb","has",false],["Term","name","example"],["Attributes",["SynonymousForm",[["Term","name","example"],["Verb","is of",false],["Term","device","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","device","example"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","name","example"]],["AtomicFormulation",["FactType",["Term","device","example"],["Verb","has",false],["Term","name","example"]],["RoleBinding",["Term","device","example"],0],["RoleBinding",["Term","name","example"],1]]]]],["StructuredEnglish","It is necessary that each device has at most one name."]]]]],["FactType",["Term","device","example"],["Verb","has",false],["Term","note","example"],["Attributes",["SynonymousForm",[["Term","note","example"],["Verb","is of",false],["Term","device","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","device","example"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","note","example"]],["AtomicFormulation",["FactType",["Term","device","example"],["Verb","has",false],["Term","note","example"]],["RoleBinding",["Term","device","example"],0],["RoleBinding",["Term","note","example"],1]]]]],["StructuredEnglish","It is necessary that each device has at most one note."]]]]],["FactType",["Term","device","example"],["Verb","has",false],["Term","type","example"],["Attributes",["SynonymousForm",[["Term","type","example"],["Verb","is of",false],["Term","device","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","device","example"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","type","example"]],["AtomicFormulation",["FactType",["Term","device","example"],["Verb","has",false],["Term","type","example"]],["RoleBinding",["Term","device","example"],0],["RoleBinding",["Term","type","example"],1]]]]],["StructuredEnglish","It is necessary that each device has exactly one type."]]]]],["Term","deviceb","example",["Attributes"]],["FactType",["Term","deviceb","example"],["Verb","has",false],["Term","name","example"],["Attributes",["SynonymousForm",[["Term","name","example"],["Verb","is of",false],["Term","deviceb","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","deviceb","example"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","name","example"]],["AtomicFormulation",["FactType",["Term","deviceb","example"],["Verb","has",false],["Term","name","example"]],["RoleBinding",["Term","deviceb","example"],0],["RoleBinding",["Term","name","example"],1]]]]],["StructuredEnglish","It is necessary that each deviceb has at most one name."]]]]],["FactType",["Term","deviceb","example"],["Verb","has",false],["Term","note","example"],["Attributes",["SynonymousForm",[["Term","note","example"],["Verb","is of",false],["Term","deviceb","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","deviceb","example"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","note","example"]],["AtomicFormulation",["FactType",["Term","deviceb","example"],["Verb","has",false],["Term","note","example"]],["RoleBinding",["Term","deviceb","example"],0],["RoleBinding",["Term","note","example"],1]]]]],["StructuredEnglish","It is necessary that each deviceb has at most one note."]]]]],["FactType",["Term","deviceb","example"],["Verb","has",false],["Term","type","example"],["Attributes",["SynonymousForm",[["Term","type","example"],["Verb","is of",false],["Term","deviceb","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","deviceb","example"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","type","example"]],["AtomicFormulation",["FactType",["Term","deviceb","example"],["Verb","has",false],["Term","type","example"]],["RoleBinding",["Term","deviceb","example"],0],["RoleBinding",["Term","type","example"],1]]]]],["StructuredEnglish","It is necessary that each deviceb has exactly one type."]]]]]],"\"Vocabulary: example\\n\\nTerm: name\\n\\tConcept Type: Short Text (Type)\\n\\nTerm: other image\\n\\tConcept Type: WebResource (Type)\\n\\nTerm: not translated webresource\\n\\tConcept Type: WebResource (Type)\\n\\nTerm: organization\\n\\nFact Type: organization has name\\n\\tNecessity: each organization has exactly one name\\n\\tNecessity: each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5\\n\\nFact Type: organization has not translated webresource\\n\\tNecessity: each organization has at most one not translated webresource\\n\\tNecessity: each not translated webresource is of exactly one organization.\\n\\tNecessity: each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\\n\\nFact Type: organization has other image\\n\\tNecessity: each organization has at most one other image\\n\\tNecessity: each other image is of exactly one organization.\\n\\tNecessity: each organization that has a other image, has a other image that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\\n\"":["Model",["Vocabulary","Type",["Attributes"]],["Term","Integer","Type",["Attributes"]],["Term","Real","Type",["Attributes"]],["Term","Text","Type",["Attributes"]],["Term","Date","Type",["Attributes"]],["Term","Date Time","Type",["Attributes"]],["Term","Date Time Range","Type",["Attributes"]],["Term","Time","Type",["Attributes"]],["Term","Interval","Type",["Attributes"]],["Term","File","Type",["Attributes"]],["Term","Big Integer","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Serial","Type",["Attributes",["ConceptType",["Term","Integer","Type"]],["Note","An auto-incrementing 'Integer'."]]],["Term","Big Serial","Type",["Attributes",["ConceptType",["Term","Big Integer","Type"]],["Note","An auto-incrementing 'Big Integer'."]]],["Term","Case Insensitive Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that is compared case insensitively."]]],["Term","JSON","Type",["Attributes",["Note","A 'Text' type that will only allow valid JSON."]]],["Term","Hashed","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a hash."]]],["Term","SHA","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a sha256 hash."]]],["Term","Length","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Name","Current Time","Type",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"],["Attributes",["SynonymousForm",[["Term","Length","Type"],["Verb","is of",false],["Term","Text","Type"]]],["Note","Length in characters"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Text","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Length","Type"]],["AtomicFormulation",["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"]],["RoleBinding",["Term","Text","Type"],0],["RoleBinding",["Term","Length","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Text has exactly one Length"]]]]],["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"],["Attributes",["Note","Casts the JSON to a text string"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","JSON","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Text","Type"]],["AtomicFormulation",["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"]],["RoleBinding",["Term","JSON","Type"],0],["RoleBinding",["Term","Text","Type"],1]]]]],["StructuredEnglish","It is necessary that Each JSON is represented by exactly one Text"]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is equal to",false],["Term","Integer","Type",["Number",1]]]],["SynonymousForm",[["Term","Integer","Type",["Number",1]],["Verb","equals",false],["Term","Integer","Type",["Number",2]]]],["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","equals",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is equal to",false],["Term","Real","Type",["Number",1]]]],["SynonymousForm",[["Term","Real","Type",["Number",1]],["Verb","equals",false],["Term","Real","Type",["Number",2]]]],["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","equals",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is before",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is after",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is equal to",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is equal to",false],["Term","Date","Type",["Number",1]]]],["SynonymousForm",[["Term","Date","Type",["Number",1]],["Verb","equals",false],["Term","Date","Type",["Number",2]]]],["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","equals",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is before",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is after",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",1]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",1]],["Verb","equals",false],["Term","Date Time","Type",["Number",2]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","equals",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Real","Type"],["Verb","is less than",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than",false],["Term","Integer","Type"]]]]],["FactType",["Term","Real","Type"],["Verb","is less than or equal to",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than or equal to",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than or equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than or equal to",false],["Term","Integer","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is equal to",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Real","Type"],["Verb","equals",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Integer","Type"],["Verb","equals",false],["Term","Real","Type"]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is equal to",false],["Term","Text","Type",["Number",1]]]],["SynonymousForm",[["Term","Text","Type",["Number",1]],["Verb","equals",false],["Term","Text","Type",["Number",2]]]],["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","equals",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","starts with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","ends with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","contains",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is contained in",false],["Term","Text","Type",["Number",1]]]]]],["Term","Short Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]]]],["Term","Red Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Green Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Blue Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Alpha Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Color","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"],["Attributes",["SynonymousForm",[["Term","Red Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Red Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Red Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Red Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"],["Attributes",["SynonymousForm",[["Term","Green Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Green Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Green Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Green Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"],["Attributes",["SynonymousForm",[["Term","Blue Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Blue Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Blue Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Blue Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"],["Attributes",["SynonymousForm",[["Term","Alpha Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Alpha Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Alpha Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Alpha Component"]]]]],["Term","Filename","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","HRef","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Type","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Disposition","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Size","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","WebResource","Type",["Attributes",["ConceptType",["Term","JSON","Type"]],["Note","A 'JSON' type that will only allow valid JSON with an specific schema."]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"],["Attributes",["SynonymousForm",[["Term","Filename","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Filename","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Filename","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one Filename."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"],["Attributes",["SynonymousForm",[["Term","HRef","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","HRef","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","HRef","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one HRef."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"],["Attributes",["SynonymousForm",[["Term","Content Type","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Type","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Type","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Type."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"],["Attributes",["SynonymousForm",[["Term","Content Disposition","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Disposition","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Disposition","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Disposition."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"],["Attributes",["SynonymousForm",[["Term","Size","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Size","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Size","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Size."]]]]],["Vocabulary","Default",["Attributes"]],["Vocabulary","example",["Attributes"]],["Term","name","example",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","other image","example",["Attributes",["ConceptType",["Term","WebResource","Type"]]]],["Term","not translated webresource","example",["Attributes",["ConceptType",["Term","WebResource","Type"]]]],["Term","organization","example",["Attributes"]],["FactType",["Term","organization","example"],["Verb","has",false],["Term","name","example"],["Attributes",["SynonymousForm",[["Term","name","example"],["Verb","is of",false],["Term","organization","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","organization","example"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","name","example"]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","name","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","name","example"],1]]]]],["StructuredEnglish","It is necessary that each organization has exactly one name"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","organization","example"],["ExistentialQuantification",["Variable",["Number",1],["Term","name","example"]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","name","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","name","example"],1]]]],["ExistentialQuantification",["Variable",["Number",2],["Term","name","example"],["ExistentialQuantification",["Variable",["Number",3],["Term","Length","Type"],["Conjunction",["AtomicFormulation",["FactType",["Term","Length","Type"],["Verb","is greater than",false],["Term","Integer","Type",["Integer",0]]],["RoleBinding",["Term","Length","Type"],3],["RoleBinding",["Term","Integer","Type",["Integer",0]],["Integer",0]]],["AtomicFormulation",["FactType",["Term","Length","Type"],["Verb","is less than or equal to",false],["Term","Integer","Type",["Integer",5]]],["RoleBinding",["Term","Length","Type"],3],["RoleBinding",["Term","Integer","Type",["Integer",5]],["Integer",5]]]]],["AtomicFormulation",["FactType",["Term","name","example"],["Verb","has",false],["Term","Length","Type"]],["RoleBinding",["Term","name","example"],2],["RoleBinding",["Term","Length","Type"],3]]]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","name","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","name","example"],2]]]]],["StructuredEnglish","It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5"]]]]],["FactType",["Term","organization","example"],["Verb","has",false],["Term","not translated webresource","example"],["Attributes",["SynonymousForm",[["Term","not translated webresource","example"],["Verb","is of",false],["Term","organization","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","organization","example"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","not translated webresource","example"]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","not translated webresource","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","not translated webresource","example"],1]]]]],["StructuredEnglish","It is necessary that each organization has at most one not translated webresource"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","not translated webresource","example"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","organization","example"]],["AtomicFormulation",["FactType",["Term","not translated webresource","example"],["Verb","is of",false],["Term","organization","example"]],["RoleBinding",["Term","not translated webresource","example"],0],["RoleBinding",["Term","organization","example"],1]]]]],["StructuredEnglish","It is necessary that each not translated webresource is of exactly one organization."]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","organization","example"],["ExistentialQuantification",["Variable",["Number",1],["Term","not translated webresource","example"]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","not translated webresource","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","not translated webresource","example"],1]]]],["ExistentialQuantification",["Variable",["Number",2],["Term","not translated webresource","example"],["Conjunction",["ExistentialQuantification",["Variable",["Number",3],["Term","Content Type","Type"],["Disjunction",["AtomicFormulation",["FactType",["Term","Content Type","Type"],["Verb","is equal to",false],["Term","Text","Type",["Text","image/png"]]],["RoleBinding",["Term","Content Type","Type"],3],["RoleBinding",["Term","Text","Type",["Text","image/png"]],["Text","image/png"]]],["Disjunction",["AtomicFormulation",["FactType",["Term","Content Type","Type"],["Verb","is equal to",false],["Term","Text","Type",["Text","image/jpg"]]],["RoleBinding",["Term","Content Type","Type"],3],["RoleBinding",["Term","Text","Type",["Text","image/jpg"]],["Text","image/jpg"]]],["AtomicFormulation",["FactType",["Term","Content Type","Type"],["Verb","is equal to",false],["Term","Text","Type",["Text","image/jpeg"]]],["RoleBinding",["Term","Content Type","Type"],3],["RoleBinding",["Term","Text","Type",["Text","image/jpeg"]],["Text","image/jpeg"]]]]]],["AtomicFormulation",["FactType",["Term","not translated webresource","example"],["Verb","has",false],["Term","Content Type","Type"]],["RoleBinding",["Term","not translated webresource","example"],2],["RoleBinding",["Term","Content Type","Type"],3]]],["ExistentialQuantification",["Variable",["Number",4],["Term","Size","Type"],["AtomicFormulation",["FactType",["Term","Size","Type"],["Verb","is less than",false],["Term","Integer","Type",["Integer",18874368]]],["RoleBinding",["Term","Size","Type"],4],["RoleBinding",["Term","Integer","Type",["Integer",18874368]],["Integer",18874368]]]],["AtomicFormulation",["FactType",["Term","not translated webresource","example"],["Verb","has",false],["Term","Size","Type"]],["RoleBinding",["Term","not translated webresource","example"],2],["RoleBinding",["Term","Size","Type"],4]]]]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","not translated webresource","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","not translated webresource","example"],2]]]]],["StructuredEnglish","It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \"image/png\" or \"image/jpg\" or \"image/jpeg\" and has a Size (Type) that is less than 18874368."]]]]],["FactType",["Term","organization","example"],["Verb","has",false],["Term","other image","example"],["Attributes",["SynonymousForm",[["Term","other image","example"],["Verb","is of",false],["Term","organization","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","organization","example"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","other image","example"]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","other image","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","other image","example"],1]]]]],["StructuredEnglish","It is necessary that each organization has at most one other image"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","other image","example"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","organization","example"]],["AtomicFormulation",["FactType",["Term","other image","example"],["Verb","is of",false],["Term","organization","example"]],["RoleBinding",["Term","other image","example"],0],["RoleBinding",["Term","organization","example"],1]]]]],["StructuredEnglish","It is necessary that each other image is of exactly one organization."]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","organization","example"],["ExistentialQuantification",["Variable",["Number",1],["Term","other image","example"]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","other image","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","other image","example"],1]]]],["ExistentialQuantification",["Variable",["Number",2],["Term","other image","example"],["Conjunction",["ExistentialQuantification",["Variable",["Number",3],["Term","Content Type","Type"],["Disjunction",["AtomicFormulation",["FactType",["Term","Content Type","Type"],["Verb","is equal to",false],["Term","Text","Type",["Text","image/png"]]],["RoleBinding",["Term","Content Type","Type"],3],["RoleBinding",["Term","Text","Type",["Text","image/png"]],["Text","image/png"]]],["Disjunction",["AtomicFormulation",["FactType",["Term","Content Type","Type"],["Verb","is equal to",false],["Term","Text","Type",["Text","image/jpg"]]],["RoleBinding",["Term","Content Type","Type"],3],["RoleBinding",["Term","Text","Type",["Text","image/jpg"]],["Text","image/jpg"]]],["AtomicFormulation",["FactType",["Term","Content Type","Type"],["Verb","is equal to",false],["Term","Text","Type",["Text","image/jpeg"]]],["RoleBinding",["Term","Content Type","Type"],3],["RoleBinding",["Term","Text","Type",["Text","image/jpeg"]],["Text","image/jpeg"]]]]]],["AtomicFormulation",["FactType",["Term","other image","example"],["Verb","has",false],["Term","Content Type","Type"]],["RoleBinding",["Term","other image","example"],2],["RoleBinding",["Term","Content Type","Type"],3]]],["ExistentialQuantification",["Variable",["Number",4],["Term","Size","Type"],["AtomicFormulation",["FactType",["Term","Size","Type"],["Verb","is less than",false],["Term","Integer","Type",["Integer",18874368]]],["RoleBinding",["Term","Size","Type"],4],["RoleBinding",["Term","Integer","Type",["Integer",18874368]],["Integer",18874368]]]],["AtomicFormulation",["FactType",["Term","other image","example"],["Verb","has",false],["Term","Size","Type"]],["RoleBinding",["Term","other image","example"],2],["RoleBinding",["Term","Size","Type"],4]]]]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","other image","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","other image","example"],2]]]]],["StructuredEnglish","It is necessary that each organization that has a other image, has a other image that has a Content Type (Type) that is equal to \"image/png\" or \"image/jpg\" or \"image/jpeg\" and has a Size (Type) that is less than 18874368."]]]]]],"\"Vocabulary: example\\n\\nTerm: name\\n\\tConcept Type: Short Text (Type)\\n\\nTerm: logo image\\n\\tConcept Type: WebResource (Type)\\n\\nTerm: not translated webresource\\n\\tConcept Type: WebResource (Type)\\n\\nTerm: public artifacts\\n\\tConcept Type: WebResource (Type)\\n\\nTerm: private artifacts\\n\\tConcept Type: WebResource (Type)\\n\\nTerm: unrestricted artifact\\n\\tConcept Type: WebResource (Type)\\n\\nTerm: organization\\n\\nFact Type: organization has name\\n\\tNecessity: each organization has exactly one name\\n\\tNecessity: each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5\\n\\nFact Type: organization has not translated webresource\\n\\tNecessity: each organization has at most one not translated webresource\\n\\tNecessity: each not translated webresource is of exactly one organization.\\n\\tNecessity: each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\\n\\nFact Type: organization has logo image\\n\\tNecessity: each organization has at most one logo image\\n\\tNecessity: each logo image is of exactly one organization.\\n\\tNecessity: each organization that has a logo image, has a logo image that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\\n\\nFact Type: organization releases public artifacts\\nFact Type: organization has private artifacts\\n\\tSynonymous Form: private artifacts belongs to organization\\n\\tTerm Form: organization private artifacts\\n\\tDatabase Table Name: organization private artifacts\\n\\nFact Type: organization has unrestricted artifact\\n\\tNecessity: each organization has at most one unrestricted artifact\\n\\tNecessity: each unrestricted artifact is of exactly one organization\\n\"":["Model",["Vocabulary","Type",["Attributes"]],["Term","Integer","Type",["Attributes"]],["Term","Real","Type",["Attributes"]],["Term","Text","Type",["Attributes"]],["Term","Date","Type",["Attributes"]],["Term","Date Time","Type",["Attributes"]],["Term","Date Time Range","Type",["Attributes"]],["Term","Time","Type",["Attributes"]],["Term","Interval","Type",["Attributes"]],["Term","File","Type",["Attributes"]],["Term","Big Integer","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Serial","Type",["Attributes",["ConceptType",["Term","Integer","Type"]],["Note","An auto-incrementing 'Integer'."]]],["Term","Big Serial","Type",["Attributes",["ConceptType",["Term","Big Integer","Type"]],["Note","An auto-incrementing 'Big Integer'."]]],["Term","Case Insensitive Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that is compared case insensitively."]]],["Term","JSON","Type",["Attributes",["Note","A 'Text' type that will only allow valid JSON."]]],["Term","Hashed","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a hash."]]],["Term","SHA","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a sha256 hash."]]],["Term","Length","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Name","Current Time","Type",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"],["Attributes",["SynonymousForm",[["Term","Length","Type"],["Verb","is of",false],["Term","Text","Type"]]],["Note","Length in characters"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Text","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Length","Type"]],["AtomicFormulation",["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"]],["RoleBinding",["Term","Text","Type"],0],["RoleBinding",["Term","Length","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Text has exactly one Length"]]]]],["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"],["Attributes",["Note","Casts the JSON to a text string"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","JSON","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Text","Type"]],["AtomicFormulation",["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"]],["RoleBinding",["Term","JSON","Type"],0],["RoleBinding",["Term","Text","Type"],1]]]]],["StructuredEnglish","It is necessary that Each JSON is represented by exactly one Text"]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is equal to",false],["Term","Integer","Type",["Number",1]]]],["SynonymousForm",[["Term","Integer","Type",["Number",1]],["Verb","equals",false],["Term","Integer","Type",["Number",2]]]],["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","equals",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is equal to",false],["Term","Real","Type",["Number",1]]]],["SynonymousForm",[["Term","Real","Type",["Number",1]],["Verb","equals",false],["Term","Real","Type",["Number",2]]]],["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","equals",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is before",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is after",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is equal to",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is equal to",false],["Term","Date","Type",["Number",1]]]],["SynonymousForm",[["Term","Date","Type",["Number",1]],["Verb","equals",false],["Term","Date","Type",["Number",2]]]],["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","equals",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is before",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is after",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",1]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",1]],["Verb","equals",false],["Term","Date Time","Type",["Number",2]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","equals",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Real","Type"],["Verb","is less than",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than",false],["Term","Integer","Type"]]]]],["FactType",["Term","Real","Type"],["Verb","is less than or equal to",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than or equal to",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than or equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than or equal to",false],["Term","Integer","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is equal to",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Real","Type"],["Verb","equals",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Integer","Type"],["Verb","equals",false],["Term","Real","Type"]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is equal to",false],["Term","Text","Type",["Number",1]]]],["SynonymousForm",[["Term","Text","Type",["Number",1]],["Verb","equals",false],["Term","Text","Type",["Number",2]]]],["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","equals",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","starts with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","ends with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","contains",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is contained in",false],["Term","Text","Type",["Number",1]]]]]],["Term","Short Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]]]],["Term","Red Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Green Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Blue Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Alpha Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Color","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"],["Attributes",["SynonymousForm",[["Term","Red Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Red Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Red Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Red Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"],["Attributes",["SynonymousForm",[["Term","Green Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Green Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Green Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Green Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"],["Attributes",["SynonymousForm",[["Term","Blue Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Blue Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Blue Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Blue Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"],["Attributes",["SynonymousForm",[["Term","Alpha Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Alpha Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Alpha Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Alpha Component"]]]]],["Term","Filename","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","HRef","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Type","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Disposition","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Size","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","WebResource","Type",["Attributes",["ConceptType",["Term","JSON","Type"]],["Note","A 'JSON' type that will only allow valid JSON with an specific schema."]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"],["Attributes",["SynonymousForm",[["Term","Filename","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Filename","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Filename","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one Filename."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"],["Attributes",["SynonymousForm",[["Term","HRef","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","HRef","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","HRef","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one HRef."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"],["Attributes",["SynonymousForm",[["Term","Content Type","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Type","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Type","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Type."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"],["Attributes",["SynonymousForm",[["Term","Content Disposition","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Disposition","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Disposition","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Disposition."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"],["Attributes",["SynonymousForm",[["Term","Size","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Size","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Size","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Size."]]]]],["Vocabulary","Default",["Attributes"]],["Vocabulary","example",["Attributes"]],["Term","name","example",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","logo image","example",["Attributes",["ConceptType",["Term","WebResource","Type"]]]],["Term","not translated webresource","example",["Attributes",["ConceptType",["Term","WebResource","Type"]]]],["Term","public artifacts","example",["Attributes",["ConceptType",["Term","WebResource","Type"]]]],["Term","private artifacts","example",["Attributes",["ConceptType",["Term","WebResource","Type"]]]],["Term","unrestricted artifact","example",["Attributes",["ConceptType",["Term","WebResource","Type"]]]],["Term","organization","example",["Attributes"]],["FactType",["Term","organization","example"],["Verb","has",false],["Term","name","example"],["Attributes",["SynonymousForm",[["Term","name","example"],["Verb","is of",false],["Term","organization","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","organization","example"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","name","example"]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","name","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","name","example"],1]]]]],["StructuredEnglish","It is necessary that each organization has exactly one name"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","organization","example"],["ExistentialQuantification",["Variable",["Number",1],["Term","name","example"]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","name","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","name","example"],1]]]],["ExistentialQuantification",["Variable",["Number",2],["Term","name","example"],["ExistentialQuantification",["Variable",["Number",3],["Term","Length","Type"],["Conjunction",["AtomicFormulation",["FactType",["Term","Length","Type"],["Verb","is greater than",false],["Term","Integer","Type",["Integer",0]]],["RoleBinding",["Term","Length","Type"],3],["RoleBinding",["Term","Integer","Type",["Integer",0]],["Integer",0]]],["AtomicFormulation",["FactType",["Term","Length","Type"],["Verb","is less than or equal to",false],["Term","Integer","Type",["Integer",5]]],["RoleBinding",["Term","Length","Type"],3],["RoleBinding",["Term","Integer","Type",["Integer",5]],["Integer",5]]]]],["AtomicFormulation",["FactType",["Term","name","example"],["Verb","has",false],["Term","Length","Type"]],["RoleBinding",["Term","name","example"],2],["RoleBinding",["Term","Length","Type"],3]]]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","name","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","name","example"],2]]]]],["StructuredEnglish","It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5"]]]]],["FactType",["Term","organization","example"],["Verb","has",false],["Term","not translated webresource","example"],["Attributes",["SynonymousForm",[["Term","not translated webresource","example"],["Verb","is of",false],["Term","organization","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","organization","example"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","not translated webresource","example"]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","not translated webresource","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","not translated webresource","example"],1]]]]],["StructuredEnglish","It is necessary that each organization has at most one not translated webresource"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","not translated webresource","example"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","organization","example"]],["AtomicFormulation",["FactType",["Term","not translated webresource","example"],["Verb","is of",false],["Term","organization","example"]],["RoleBinding",["Term","not translated webresource","example"],0],["RoleBinding",["Term","organization","example"],1]]]]],["StructuredEnglish","It is necessary that each not translated webresource is of exactly one organization."]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","organization","example"],["ExistentialQuantification",["Variable",["Number",1],["Term","not translated webresource","example"]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","not translated webresource","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","not translated webresource","example"],1]]]],["ExistentialQuantification",["Variable",["Number",2],["Term","not translated webresource","example"],["Conjunction",["ExistentialQuantification",["Variable",["Number",3],["Term","Content Type","Type"],["Disjunction",["AtomicFormulation",["FactType",["Term","Content Type","Type"],["Verb","is equal to",false],["Term","Text","Type",["Text","image/png"]]],["RoleBinding",["Term","Content Type","Type"],3],["RoleBinding",["Term","Text","Type",["Text","image/png"]],["Text","image/png"]]],["Disjunction",["AtomicFormulation",["FactType",["Term","Content Type","Type"],["Verb","is equal to",false],["Term","Text","Type",["Text","image/jpg"]]],["RoleBinding",["Term","Content Type","Type"],3],["RoleBinding",["Term","Text","Type",["Text","image/jpg"]],["Text","image/jpg"]]],["AtomicFormulation",["FactType",["Term","Content Type","Type"],["Verb","is equal to",false],["Term","Text","Type",["Text","image/jpeg"]]],["RoleBinding",["Term","Content Type","Type"],3],["RoleBinding",["Term","Text","Type",["Text","image/jpeg"]],["Text","image/jpeg"]]]]]],["AtomicFormulation",["FactType",["Term","not translated webresource","example"],["Verb","has",false],["Term","Content Type","Type"]],["RoleBinding",["Term","not translated webresource","example"],2],["RoleBinding",["Term","Content Type","Type"],3]]],["ExistentialQuantification",["Variable",["Number",4],["Term","Size","Type"],["AtomicFormulation",["FactType",["Term","Size","Type"],["Verb","is less than",false],["Term","Integer","Type",["Integer",18874368]]],["RoleBinding",["Term","Size","Type"],4],["RoleBinding",["Term","Integer","Type",["Integer",18874368]],["Integer",18874368]]]],["AtomicFormulation",["FactType",["Term","not translated webresource","example"],["Verb","has",false],["Term","Size","Type"]],["RoleBinding",["Term","not translated webresource","example"],2],["RoleBinding",["Term","Size","Type"],4]]]]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","not translated webresource","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","not translated webresource","example"],2]]]]],["StructuredEnglish","It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \"image/png\" or \"image/jpg\" or \"image/jpeg\" and has a Size (Type) that is less than 18874368."]]]]],["FactType",["Term","organization","example"],["Verb","has",false],["Term","logo image","example"],["Attributes",["SynonymousForm",[["Term","logo image","example"],["Verb","is of",false],["Term","organization","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","organization","example"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","logo image","example"]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","logo image","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","logo image","example"],1]]]]],["StructuredEnglish","It is necessary that each organization has at most one logo image"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","logo image","example"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","organization","example"]],["AtomicFormulation",["FactType",["Term","logo image","example"],["Verb","is of",false],["Term","organization","example"]],["RoleBinding",["Term","logo image","example"],0],["RoleBinding",["Term","organization","example"],1]]]]],["StructuredEnglish","It is necessary that each logo image is of exactly one organization."]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","organization","example"],["ExistentialQuantification",["Variable",["Number",1],["Term","logo image","example"]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","logo image","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","logo image","example"],1]]]],["ExistentialQuantification",["Variable",["Number",2],["Term","logo image","example"],["Conjunction",["ExistentialQuantification",["Variable",["Number",3],["Term","Content Type","Type"],["Disjunction",["AtomicFormulation",["FactType",["Term","Content Type","Type"],["Verb","is equal to",false],["Term","Text","Type",["Text","image/png"]]],["RoleBinding",["Term","Content Type","Type"],3],["RoleBinding",["Term","Text","Type",["Text","image/png"]],["Text","image/png"]]],["Disjunction",["AtomicFormulation",["FactType",["Term","Content Type","Type"],["Verb","is equal to",false],["Term","Text","Type",["Text","image/jpg"]]],["RoleBinding",["Term","Content Type","Type"],3],["RoleBinding",["Term","Text","Type",["Text","image/jpg"]],["Text","image/jpg"]]],["AtomicFormulation",["FactType",["Term","Content Type","Type"],["Verb","is equal to",false],["Term","Text","Type",["Text","image/jpeg"]]],["RoleBinding",["Term","Content Type","Type"],3],["RoleBinding",["Term","Text","Type",["Text","image/jpeg"]],["Text","image/jpeg"]]]]]],["AtomicFormulation",["FactType",["Term","logo image","example"],["Verb","has",false],["Term","Content Type","Type"]],["RoleBinding",["Term","logo image","example"],2],["RoleBinding",["Term","Content Type","Type"],3]]],["ExistentialQuantification",["Variable",["Number",4],["Term","Size","Type"],["AtomicFormulation",["FactType",["Term","Size","Type"],["Verb","is less than",false],["Term","Integer","Type",["Integer",18874368]]],["RoleBinding",["Term","Size","Type"],4],["RoleBinding",["Term","Integer","Type",["Integer",18874368]],["Integer",18874368]]]],["AtomicFormulation",["FactType",["Term","logo image","example"],["Verb","has",false],["Term","Size","Type"]],["RoleBinding",["Term","logo image","example"],2],["RoleBinding",["Term","Size","Type"],4]]]]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","logo image","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","logo image","example"],2]]]]],["StructuredEnglish","It is necessary that each organization that has a logo image, has a logo image that has a Content Type (Type) that is equal to \"image/png\" or \"image/jpg\" or \"image/jpeg\" and has a Size (Type) that is less than 18874368."]]]]],["FactType",["Term","organization","example"],["Verb","releases",false],["Term","public artifacts","example"],["Attributes"]],["FactType",["Term","organization","example"],["Verb","has",false],["Term","private artifacts","example"],["Attributes",["SynonymousForm",[["Term","private artifacts","example"],["Verb","is of",false],["Term","organization","example"]]],["SynonymousForm",[["Term","private artifacts","example"],["Verb","belongs to",false],["Term","organization","example"]]],["TermForm",["Term","organization private artifacts","example"]],["DatabaseTableName","organization private artifacts"]]],["FactType",["Term","organization","example"],["Verb","has",false],["Term","unrestricted artifact","example"],["Attributes",["SynonymousForm",[["Term","unrestricted artifact","example"],["Verb","is of",false],["Term","organization","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","organization","example"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","unrestricted artifact","example"]],["AtomicFormulation",["FactType",["Term","organization","example"],["Verb","has",false],["Term","unrestricted artifact","example"]],["RoleBinding",["Term","organization","example"],0],["RoleBinding",["Term","unrestricted artifact","example"],1]]]]],["StructuredEnglish","It is necessary that each organization has at most one unrestricted artifact"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","unrestricted artifact","example"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","organization","example"]],["AtomicFormulation",["FactType",["Term","unrestricted artifact","example"],["Verb","is of",false],["Term","organization","example"]],["RoleBinding",["Term","unrestricted artifact","example"],0],["RoleBinding",["Term","organization","example"],1]]]]],["StructuredEnglish","It is necessary that each unrestricted artifact is of exactly one organization"]]]]]],"\"Vocabulary: example\\n\\nTerm: name\\n\\t Concept Type: Short Text (Type)\\n\\nTerm: note\\n\\t Concept Type: Text (Type)\\n\\nTerm: last heartbeat\\n\\tConcept Type: Date Time (Type)\\n\\nTerm: type\\n\\t Concept Type: Short Text (Type)\\n\\nTerm: count\\n\\t Concept Type: Integer (Type)\\n\\nTerm: device\\n\\nFact Type: device has name\\n\\t Necessity: each device has at most one name.\\n\\nFact Type: device has note\\n\\t Necessity: each device has at most one note.\\n\\nFact Type: device has note\\n\\t Necessity: each device has at most one note.\\n\\nFact type: device has last heartbeat\\n\\tNecessity: each device has at most one last heartbeat.\\n\\nFact Type: device has type\\n\\t Necessity: each device has exactly one type.\\n\\nFact Type: device has count\\n\\t Necessity: each device has at most one count.\"":["Model",["Vocabulary","Type",["Attributes"]],["Term","Integer","Type",["Attributes"]],["Term","Real","Type",["Attributes"]],["Term","Text","Type",["Attributes"]],["Term","Date","Type",["Attributes"]],["Term","Date Time","Type",["Attributes"]],["Term","Date Time Range","Type",["Attributes"]],["Term","Time","Type",["Attributes"]],["Term","Interval","Type",["Attributes"]],["Term","File","Type",["Attributes"]],["Term","Big Integer","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Serial","Type",["Attributes",["ConceptType",["Term","Integer","Type"]],["Note","An auto-incrementing 'Integer'."]]],["Term","Big Serial","Type",["Attributes",["ConceptType",["Term","Big Integer","Type"]],["Note","An auto-incrementing 'Big Integer'."]]],["Term","Case Insensitive Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that is compared case insensitively."]]],["Term","JSON","Type",["Attributes",["Note","A 'Text' type that will only allow valid JSON."]]],["Term","Hashed","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a hash."]]],["Term","SHA","Type",["Attributes",["ConceptType",["Term","Text","Type"]],["Note","A 'Text' type that will automatically be converted to a sha256 hash."]]],["Term","Length","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Name","Current Time","Type",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"],["Attributes",["SynonymousForm",[["Term","Length","Type"],["Verb","is of",false],["Term","Text","Type"]]],["Note","Length in characters"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Text","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Length","Type"]],["AtomicFormulation",["FactType",["Term","Text","Type"],["Verb","has",false],["Term","Length","Type"]],["RoleBinding",["Term","Text","Type"],0],["RoleBinding",["Term","Length","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Text has exactly one Length"]]]]],["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"],["Attributes",["Note","Casts the JSON to a text string"],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","JSON","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Text","Type"]],["AtomicFormulation",["FactType",["Term","JSON","Type"],["Verb","is represented by",false],["Term","Text","Type"]],["RoleBinding",["Term","JSON","Type"],0],["RoleBinding",["Term","Text","Type"],1]]]]],["StructuredEnglish","It is necessary that Each JSON is represented by exactly one Text"]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Integer","Type",["Number",1]],["Verb","is equal to",false],["Term","Integer","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","is equal to",false],["Term","Integer","Type",["Number",1]]]],["SynonymousForm",[["Term","Integer","Type",["Number",1]],["Verb","equals",false],["Term","Integer","Type",["Number",2]]]],["SynonymousForm",[["Term","Integer","Type",["Number",2]],["Verb","equals",false],["Term","Integer","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is less than or equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is greater than or equal to",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Real","Type",["Number",1]],["Verb","is equal to",false],["Term","Real","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","is equal to",false],["Term","Real","Type",["Number",1]]]],["SynonymousForm",[["Term","Real","Type",["Number",1]],["Verb","equals",false],["Term","Real","Type",["Number",2]]]],["SynonymousForm",[["Term","Real","Type",["Number",2]],["Verb","equals",false],["Term","Real","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is before",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is after",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date","Type",["Number",1]],["Verb","is equal to",false],["Term","Date","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","is equal to",false],["Term","Date","Type",["Number",1]]]],["SynonymousForm",[["Term","Date","Type",["Number",1]],["Verb","equals",false],["Term","Date","Type",["Number",2]]]],["SynonymousForm",[["Term","Date","Type",["Number",2]],["Verb","equals",false],["Term","Date","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is before",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is after",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Date Time","Type",["Number",1]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","is equal to",false],["Term","Date Time","Type",["Number",1]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",1]],["Verb","equals",false],["Term","Date Time","Type",["Number",2]]]],["SynonymousForm",[["Term","Date Time","Type",["Number",2]],["Verb","equals",false],["Term","Date Time","Type",["Number",1]]]]]],["FactType",["Term","Real","Type"],["Verb","is less than",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than",false],["Term","Integer","Type"]]]]],["FactType",["Term","Real","Type"],["Verb","is less than or equal to",false],["Term","Integer","Type"],["Attributes",["SynonymousForm",[["Term","Integer","Type"],["Verb","is greater than or equal to",false],["Term","Real","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is less than or equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is greater than or equal to",false],["Term","Integer","Type"]]]]],["FactType",["Term","Integer","Type"],["Verb","is equal to",false],["Term","Real","Type"],["Attributes",["SynonymousForm",[["Term","Real","Type"],["Verb","is equal to",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Real","Type"],["Verb","equals",false],["Term","Integer","Type"]]],["SynonymousForm",[["Term","Integer","Type"],["Verb","equals",false],["Term","Real","Type"]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is equal to",false],["Term","Text","Type",["Number",1]]]],["SynonymousForm",[["Term","Text","Type",["Number",1]],["Verb","equals",false],["Term","Text","Type",["Number",2]]]],["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","equals",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is case insensitively equal to",false],["Term","Text","Type",["Number",1]]]]]],["FactType",["Term","Text","Type",["Number",1]],["Verb","starts with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","ends with",false],["Term","Text","Type",["Number",2]],["Attributes"]],["FactType",["Term","Text","Type",["Number",1]],["Verb","contains",false],["Term","Text","Type",["Number",2]],["Attributes",["SynonymousForm",[["Term","Text","Type",["Number",2]],["Verb","is contained in",false],["Term","Text","Type",["Number",1]]]]]],["Term","Short Text","Type",["Attributes",["ConceptType",["Term","Text","Type"]]]],["Term","Red Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Green Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Blue Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Alpha Component","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","Color","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"],["Attributes",["SynonymousForm",[["Term","Red Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Red Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Red Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Red Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Red Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"],["Attributes",["SynonymousForm",[["Term","Green Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Green Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Green Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Green Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Green Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"],["Attributes",["SynonymousForm",[["Term","Blue Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Blue Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Blue Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Blue Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Blue Component"]]]]],["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"],["Attributes",["SynonymousForm",[["Term","Alpha Component","Type"],["Verb","is of",false],["Term","Color","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","Color","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Alpha Component","Type"]],["AtomicFormulation",["FactType",["Term","Color","Type"],["Verb","has",false],["Term","Alpha Component","Type"]],["RoleBinding",["Term","Color","Type"],0],["RoleBinding",["Term","Alpha Component","Type"],1]]]]],["StructuredEnglish","It is necessary that Each Color has exactly one Alpha Component"]]]]],["Term","Filename","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","HRef","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Type","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Content Disposition","Type",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","Size","Type",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","WebResource","Type",["Attributes",["ConceptType",["Term","JSON","Type"]],["Note","A 'JSON' type that will only allow valid JSON with an specific schema."]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"],["Attributes",["SynonymousForm",[["Term","Filename","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","Filename","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Filename","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Filename","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one Filename."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"],["Attributes",["SynonymousForm",[["Term","HRef","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","HRef","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","HRef","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","HRef","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has exactly one HRef."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"],["Attributes",["SynonymousForm",[["Term","Content Type","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Type","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Type","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Type","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Type."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"],["Attributes",["SynonymousForm",[["Term","Content Disposition","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Content Disposition","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Content Disposition","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Content Disposition","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Content Disposition."]]]]],["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"],["Attributes",["SynonymousForm",[["Term","Size","Type"],["Verb","is of",false],["Term","WebResource","Type"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","WebResource","Type"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","Size","Type"]],["AtomicFormulation",["FactType",["Term","WebResource","Type"],["Verb","has",false],["Term","Size","Type"]],["RoleBinding",["Term","WebResource","Type"],0],["RoleBinding",["Term","Size","Type"],1]]]]],["StructuredEnglish","It is necessary that Each WebResource has at most one Size."]]]]],["Vocabulary","Default",["Attributes"]],["Vocabulary","example",["Attributes"]],["Term","name","example",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","note","example",["Attributes",["ConceptType",["Term","Text","Type"]]]],["Term","last heartbeat","example",["Attributes",["ConceptType",["Term","Date Time","Type"]]]],["Term","type","example",["Attributes",["ConceptType",["Term","Short Text","Type"]]]],["Term","count","example",["Attributes",["ConceptType",["Term","Integer","Type"]]]],["Term","device","example",["Attributes"]],["FactType",["Term","device","example"],["Verb","has",false],["Term","name","example"],["Attributes",["SynonymousForm",[["Term","name","example"],["Verb","is of",false],["Term","device","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","device","example"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","name","example"]],["AtomicFormulation",["FactType",["Term","device","example"],["Verb","has",false],["Term","name","example"]],["RoleBinding",["Term","device","example"],0],["RoleBinding",["Term","name","example"],1]]]]],["StructuredEnglish","It is necessary that each device has at most one name."]]]]],["FactType",["Term","device","example"],["Verb","has",false],["Term","note","example"],["Attributes",["SynonymousForm",[["Term","note","example"],["Verb","is of",false],["Term","device","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","device","example"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","note","example"]],["AtomicFormulation",["FactType",["Term","device","example"],["Verb","has",false],["Term","note","example"]],["RoleBinding",["Term","device","example"],0],["RoleBinding",["Term","note","example"],1]]]]],["StructuredEnglish","It is necessary that each device has at most one note."]]]]],["FactType",["Term","device","example"],["Verb","has",false],["Term","note","example"],["Attributes",["SynonymousForm",[["Term","note","example"],["Verb","is of",false],["Term","device","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","device","example"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","note","example"]],["AtomicFormulation",["FactType",["Term","device","example"],["Verb","has",false],["Term","note","example"]],["RoleBinding",["Term","device","example"],0],["RoleBinding",["Term","note","example"],1]]]]],["StructuredEnglish","It is necessary that each device has at most one note."]]]]],["FactType",["Term","device","example"],["Verb","has",false],["Term","last heartbeat","example"],["Attributes",["SynonymousForm",[["Term","last heartbeat","example"],["Verb","is of",false],["Term","device","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","device","example"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","last heartbeat","example"]],["AtomicFormulation",["FactType",["Term","device","example"],["Verb","has",false],["Term","last heartbeat","example"]],["RoleBinding",["Term","device","example"],0],["RoleBinding",["Term","last heartbeat","example"],1]]]]],["StructuredEnglish","It is necessary that each device has at most one last heartbeat."]]]]],["FactType",["Term","device","example"],["Verb","has",false],["Term","type","example"],["Attributes",["SynonymousForm",[["Term","type","example"],["Verb","is of",false],["Term","device","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","device","example"]],["ExactQuantification",["Cardinality",["Number",1]],["Variable",["Number",1],["Term","type","example"]],["AtomicFormulation",["FactType",["Term","device","example"],["Verb","has",false],["Term","type","example"]],["RoleBinding",["Term","device","example"],0],["RoleBinding",["Term","type","example"],1]]]]],["StructuredEnglish","It is necessary that each device has exactly one type."]]]]],["FactType",["Term","device","example"],["Verb","has",false],["Term","count","example"],["Attributes",["SynonymousForm",[["Term","count","example"],["Verb","is of",false],["Term","device","example"]]],["Necessity",["Rule",["NecessityFormulation",["UniversalQuantification",["Variable",["Number",0],["Term","device","example"]],["AtMostNQuantification",["MaximumCardinality",["Number",1]],["Variable",["Number",1],["Term","count","example"]],["AtomicFormulation",["FactType",["Term","device","example"],["Verb","has",false],["Term","count","example"]],["RoleBinding",["Term","device","example"],0],["RoleBinding",["Term","count","example"],1]]]]],["StructuredEnglish","It is necessary that each device has at most one count."]]]]]]}},"abstractSqlModel":{"6.0.1+11.2.1+11.3.21":{"[\"Model\",[\"Vocabulary\",\"Type\",[\"Attributes\"]],[\"Term\",\"Integer\",\"Type\",[\"Attributes\"]],[\"Term\",\"Real\",\"Type\",[\"Attributes\"]],[\"Term\",\"Text\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time Range\",\"Type\",[\"Attributes\"]],[\"Term\",\"Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Interval\",\"Type\",[\"Attributes\"]],[\"Term\",\"File\",\"Type\",[\"Attributes\"]],[\"Term\",\"Big Integer\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Integer'.\"]]],[\"Term\",\"Big Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Big Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Big Integer'.\"]]],[\"Term\",\"Case Insensitive Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that is compared case insensitively.\"]]],[\"Term\",\"JSON\",\"Type\",[\"Attributes\",[\"Note\",\"A 'Text' type that will only allow valid JSON.\"]]],[\"Term\",\"Hashed\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a hash.\"]]],[\"Term\",\"SHA\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a sha256 hash.\"]]],[\"Term\",\"Length\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Name\",\"Current Time\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Length\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Text\",\"Type\"]]],[\"Note\",\"Length in characters\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Text\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Length\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Text has exactly one Length\"]]]]],[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"],[\"Attributes\",[\"Note\",\"Casts the JSON to a text string\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"JSON\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Text\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"JSON\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each JSON is represented by exactly one Text\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"starts with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"ends with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"contains\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is contained in\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"Term\",\"Short Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]]]],[\"Term\",\"Red Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Green Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Blue Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Alpha Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Color\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Red Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Red Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Red Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Red Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Green Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Green Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Green Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Green Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Blue Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Blue Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Blue Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Blue Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Alpha Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Alpha Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Alpha Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Alpha Component\"]]]]],[\"Term\",\"Filename\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"HRef\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Type\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Disposition\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Size\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"WebResource\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"JSON\",\"Type\"]],[\"Note\",\"A 'JSON' type that will only allow valid JSON with an specific schema.\"]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Filename\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Filename\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Filename\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one Filename.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"HRef\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"HRef\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"HRef\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one HRef.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Type\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Type.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Disposition\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Disposition\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Disposition\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Disposition.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Size\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Size\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Size.\"]]]]],[\"Vocabulary\",\"Default\",[\"Attributes\"]],[\"Vocabulary\",\"dev\",[\"Attributes\"]],[\"Term\",\"model value\",\"dev\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"JSON\",\"Type\"]]]],[\"Term\",\"model\",\"dev\",[\"Attributes\",[\"ReferenceScheme\",[\"Term\",\"model value\",\"dev\"]]]],[\"Term\",\"vocabulary\",\"dev\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"model type\",\"dev\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"FactType\",[\"Term\",\"model\",\"dev\"],[\"Verb\",\"is of\",false],[\"Term\",\"vocabulary\",\"dev\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"vocabulary\",\"dev\"],[\"Verb\",\"has\",false],[\"Term\",\"model\",\"dev\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"model\",\"dev\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"vocabulary\",\"dev\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"model\",\"dev\"],[\"Verb\",\"is of\",false],[\"Term\",\"vocabulary\",\"dev\"]],[\"RoleBinding\",[\"Term\",\"model\",\"dev\"],0],[\"RoleBinding\",[\"Term\",\"vocabulary\",\"dev\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each model is of exactly one vocabulary\"]]]]],[\"FactType\",[\"Term\",\"model\",\"dev\"],[\"Verb\",\"has\",false],[\"Term\",\"model type\",\"dev\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"model type\",\"dev\"],[\"Verb\",\"is of\",false],[\"Term\",\"model\",\"dev\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"model\",\"dev\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"model type\",\"dev\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"model\",\"dev\"],[\"Verb\",\"has\",false],[\"Term\",\"model type\",\"dev\"]],[\"RoleBinding\",[\"Term\",\"model\",\"dev\"],0],[\"RoleBinding\",[\"Term\",\"model type\",\"dev\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each model has exactly one model type\"]]]]],[\"FactType\",[\"Term\",\"model\",\"dev\"],[\"Verb\",\"has\",false],[\"Term\",\"model value\",\"dev\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"model value\",\"dev\"],[\"Verb\",\"is of\",false],[\"Term\",\"model\",\"dev\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"model\",\"dev\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"model value\",\"dev\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"model\",\"dev\"],[\"Verb\",\"has\",false],[\"Term\",\"model value\",\"dev\"]],[\"RoleBinding\",[\"Term\",\"model\",\"dev\"],0],[\"RoleBinding\",[\"Term\",\"model value\",\"dev\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each model has exactly one model value\"]]]]]]":{"tables":{"model":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"is of-vocabulary","required":true,"references":{"resourceName":"vocabulary","fieldName":null}},{"dataType":"Short Text","fieldName":"model type","required":true,"references":{"resourceName":"model type","fieldName":null}},{"dataType":"JSON","fieldName":"model value","required":true,"references":{"resourceName":"model value","fieldName":null}}],"primitive":false,"name":"model","indexes":[],"idField":"id","resourceName":"model","modelName":"model","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"model value"}},"functions":{"trigger_update_modified_at":{"type":"trigger","body":"NEW.\"modified at\" = NOW();\nRETURN NEW;","language":"plpgsql"}},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"model value":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"vocabulary":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"model type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"model":{"is of":{"vocabulary":{"$":["is of-vocabulary"]}},"model":{"is of":{"vocabulary":{"$":["is of-vocabulary"]}},"has":{"model type":{"$":["model type"]},"model value":{"$":["model value"]}}},"has":{"model type":{"$":["model type"]},"model value":{"$":["model value"]}},"model type":{"$":["model type"]},"model value":{"$":["model value"]}}},"rules":[],"synonyms":{},"lfInfo":{"rules":{}}},"[\"Model\",[\"Vocabulary\",\"Type\",[\"Attributes\"]],[\"Term\",\"Integer\",\"Type\",[\"Attributes\"]],[\"Term\",\"Real\",\"Type\",[\"Attributes\"]],[\"Term\",\"Text\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time Range\",\"Type\",[\"Attributes\"]],[\"Term\",\"Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Interval\",\"Type\",[\"Attributes\"]],[\"Term\",\"File\",\"Type\",[\"Attributes\"]],[\"Term\",\"Big Integer\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Integer'.\"]]],[\"Term\",\"Big Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Big Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Big Integer'.\"]]],[\"Term\",\"Case Insensitive Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that is compared case insensitively.\"]]],[\"Term\",\"JSON\",\"Type\",[\"Attributes\",[\"Note\",\"A 'Text' type that will only allow valid JSON.\"]]],[\"Term\",\"Hashed\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a hash.\"]]],[\"Term\",\"SHA\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a sha256 hash.\"]]],[\"Term\",\"Length\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Name\",\"Current Time\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Length\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Text\",\"Type\"]]],[\"Note\",\"Length in characters\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Text\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Length\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Text has exactly one Length\"]]]]],[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"],[\"Attributes\",[\"Note\",\"Casts the JSON to a text string\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"JSON\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Text\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"JSON\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each JSON is represented by exactly one Text\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"starts with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"ends with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"contains\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is contained in\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"Term\",\"Short Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]]]],[\"Term\",\"Red Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Green Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Blue Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Alpha Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Color\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Red Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Red Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Red Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Red Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Green Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Green Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Green Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Green Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Blue Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Blue Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Blue Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Blue Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Alpha Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Alpha Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Alpha Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Alpha Component\"]]]]],[\"Term\",\"Filename\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"HRef\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Type\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Disposition\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Size\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"WebResource\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"JSON\",\"Type\"]],[\"Note\",\"A 'JSON' type that will only allow valid JSON with an specific schema.\"]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Filename\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Filename\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Filename\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one Filename.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"HRef\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"HRef\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"HRef\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one HRef.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Type\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Type.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Disposition\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Disposition\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Disposition\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Disposition.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Size\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Size\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Size.\"]]]]],[\"Vocabulary\",\"Default\",[\"Attributes\"]],[\"Vocabulary\",\"Auth\",[\"Attributes\"]],[\"Term\",\"username\",\"Auth\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"password\",\"Auth\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Hashed\",\"Type\"]]]],[\"Term\",\"name\",\"Auth\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]]]],[\"Term\",\"key\",\"Auth\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"expiry date\",\"Auth\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"Term\",\"description\",\"Auth\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]]]],[\"Term\",\"permission\",\"Auth\",[\"Attributes\",[\"ReferenceScheme\",[\"Term\",\"name\",\"Auth\"]]]],[\"FactType\",[\"Term\",\"permission\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"name\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"permission\",\"Auth\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"permission\",\"Auth\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"name\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"permission\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"permission\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"name\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each permission has exactly one name.\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"name\",\"Auth\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"permission\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"name\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"permission\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"name\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"permission\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each name is of exactly one permission.\"]]]]],[\"Term\",\"role\",\"Auth\",[\"Attributes\",[\"ReferenceScheme\",[\"Term\",\"name\",\"Auth\"]]]],[\"FactType\",[\"Term\",\"role\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"name\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"role\",\"Auth\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"role\",\"Auth\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"name\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"role\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"role\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"name\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each role has exactly one name.\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"name\",\"Auth\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"role\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"name\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"role\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"name\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"role\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each name is of exactly one role.\"]]]]],[\"FactType\",[\"Term\",\"role\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"permission\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"permission\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"role\",\"Auth\"]]]]],[\"Term\",\"actor\",\"Auth\",[\"Attributes\"]],[\"Term\",\"user\",\"Auth\",[\"Attributes\",[\"ReferenceScheme\",[\"Term\",\"username\",\"Auth\"]],[\"ConceptType\",[\"Term\",\"actor\",\"Auth\"]]]],[\"FactType\",[\"Term\",\"user\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"username\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"username\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"user\",\"Auth\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"user\",\"Auth\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"username\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"user\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"username\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"user\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"username\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each user has exactly one username.\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"username\",\"Auth\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"user\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"username\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"user\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"username\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"user\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each username is of exactly one user.\"]]]]],[\"FactType\",[\"Term\",\"user\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"password\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"password\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"user\",\"Auth\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"user\",\"Auth\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"password\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"user\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"password\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"user\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"password\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each user has exactly one password.\"]]]]],[\"FactType\",[\"Term\",\"user\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"role\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"role\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"user\",\"Auth\"]]],[\"Note\",\"A 'user' will inherit all the 'permissions' that the 'role' has.\"],[\"TermForm\",[\"Term\",\"user role\",\"Auth\"]]]],[\"FactType\",[\"Term\",\"user role\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"expiry date\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"expiry date\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"user role\",\"Auth\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"user role\",\"Auth\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"expiry date\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"user role\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"expiry date\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"user role\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"expiry date\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each user role has at most one expiry date.\"]]]]],[\"FactType\",[\"Term\",\"user\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"permission\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"permission\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"user\",\"Auth\"]]],[\"TermForm\",[\"Term\",\"user permission\",\"Auth\"]]]],[\"FactType\",[\"Term\",\"user permission\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"expiry date\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"expiry date\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"user permission\",\"Auth\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"user permission\",\"Auth\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"expiry date\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"user permission\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"expiry date\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"user permission\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"expiry date\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each user permission has at most one expiry date.\"]]]]],[\"Term\",\"api key\",\"Auth\",[\"Attributes\",[\"ReferenceScheme\",[\"Term\",\"key\",\"Auth\"]]]],[\"FactType\",[\"Term\",\"api key\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"key\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"key\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"api key\",\"Auth\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"api key\",\"Auth\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"key\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"api key\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"key\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"api key\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"key\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each api key has exactly one key\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"key\",\"Auth\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"api key\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"key\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"api key\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"key\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"api key\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each key is of exactly one api key\"]]]]],[\"FactType\",[\"Term\",\"api key\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"expiry date\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"expiry date\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"api key\",\"Auth\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"api key\",\"Auth\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"expiry date\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"api key\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"expiry date\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"api key\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"expiry date\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each api key has at most one expiry date.\"]]]]],[\"FactType\",[\"Term\",\"api key\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"role\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"role\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"api key\",\"Auth\"]]],[\"Note\",\"An 'api key' will inherit all the 'permissions' that the 'role' has.\"]]],[\"FactType\",[\"Term\",\"api key\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"permission\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"permission\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"api key\",\"Auth\"]]]]],[\"FactType\",[\"Term\",\"api key\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"actor\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"actor\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"api key\",\"Auth\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"api key\",\"Auth\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"actor\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"api key\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"actor\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"api key\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"actor\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each api key is of exactly one actor\"]]]]],[\"FactType\",[\"Term\",\"api key\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"name\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"api key\",\"Auth\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"api key\",\"Auth\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"name\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"api key\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"api key\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"name\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each api key has at most one name.\"]]]]],[\"FactType\",[\"Term\",\"api key\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"description\",\"Auth\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"description\",\"Auth\"],[\"Verb\",\"is of\",false],[\"Term\",\"api key\",\"Auth\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"api key\",\"Auth\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"description\",\"Auth\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"api key\",\"Auth\"],[\"Verb\",\"has\",false],[\"Term\",\"description\",\"Auth\"]],[\"RoleBinding\",[\"Term\",\"api key\",\"Auth\"],0],[\"RoleBinding\",[\"Term\",\"description\",\"Auth\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each api key has at most one description.\"]]]]]]":{"tables":{"permission":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Text","fieldName":"name","required":true,"references":{"resourceName":"name","fieldName":null},"index":"UNIQUE"}],"primitive":false,"name":"permission","indexes":[],"idField":"id","resourceName":"permission","modelName":"permission","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"name"},"role":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Text","fieldName":"name","required":true,"references":{"resourceName":"name","fieldName":null},"index":"UNIQUE"}],"primitive":false,"name":"role","indexes":[],"idField":"id","resourceName":"role","modelName":"role","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"name"},"role-has-permission":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"role","required":true,"references":{"resourceName":"role","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"permission","required":true,"references":{"resourceName":"permission","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"role-has-permission","indexes":[{"type":"UNIQUE","fields":["role","permission"]}],"idField":"id","resourceName":"role-has-permission","modelName":"role has permission","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}]},"actor":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"actor","indexes":[],"idField":"id","resourceName":"actor","modelName":"actor","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id"},"user":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"ConceptType","fieldName":"actor","required":true,"references":{"resourceName":"actor","fieldName":"id"}},{"dataType":"Short Text","fieldName":"username","required":true,"references":{"resourceName":"username","fieldName":null},"index":"UNIQUE"},{"dataType":"Hashed","fieldName":"password","required":true,"references":{"resourceName":"password","fieldName":null}}],"primitive":false,"name":"user","indexes":[],"idField":"id","resourceName":"user","modelName":"user","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"username"},"user-has-role":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"user","required":true,"references":{"resourceName":"user","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"role","required":true,"references":{"resourceName":"role","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Date Time","fieldName":"expiry date","required":false,"references":{"resourceName":"expiry date","fieldName":null}}],"primitive":false,"name":"user-has-role","indexes":[{"type":"UNIQUE","fields":["user","role"]}],"idField":"id","resourceName":"user-has-role","modelName":"user has role","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}]},"user-has-permission":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"user","required":true,"references":{"resourceName":"user","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"permission","required":true,"references":{"resourceName":"permission","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Date Time","fieldName":"expiry date","required":false,"references":{"resourceName":"expiry date","fieldName":null}}],"primitive":false,"name":"user-has-permission","indexes":[{"type":"UNIQUE","fields":["user","permission"]}],"idField":"id","resourceName":"user-has-permission","modelName":"user has permission","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}]},"api key":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"key","required":true,"references":{"resourceName":"key","fieldName":null},"index":"UNIQUE"},{"dataType":"Date Time","fieldName":"expiry date","required":false,"references":{"resourceName":"expiry date","fieldName":null}},{"dataType":"ForeignKey","fieldName":"is of-actor","required":true,"references":{"resourceName":"actor","fieldName":"id"}},{"dataType":"Text","fieldName":"name","required":false,"references":{"resourceName":"name","fieldName":null}},{"dataType":"Text","fieldName":"description","required":false,"references":{"resourceName":"description","fieldName":null}}],"primitive":false,"name":"api key","indexes":[],"idField":"id","resourceName":"api key","modelName":"api key","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"key"},"api key-has-role":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"api key","required":true,"references":{"resourceName":"api key","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"role","required":true,"references":{"resourceName":"role","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"api key-has-role","indexes":[{"type":"UNIQUE","fields":["api key","role"]}],"idField":"id","resourceName":"api key-has-role","modelName":"api key has role","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}]},"api key-has-permission":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"api key","required":true,"references":{"resourceName":"api key","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"permission","required":true,"references":{"resourceName":"permission","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"api key-has-permission","indexes":[{"type":"UNIQUE","fields":["api key","permission"]}],"idField":"id","resourceName":"api key-has-permission","modelName":"api key has permission","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}]}},"functions":{"trigger_update_modified_at":{"type":"trigger","body":"NEW.\"modified at\" = NOW();\nRETURN NEW;","language":"plpgsql"}},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"username":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"password":{"Hashed":{"$":["Hashed"]},"has":{"Hashed":{"$":["Hashed"]}}},"name":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"key":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"expiry date":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"description":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"permission":{"has":{"name":{"$":["name"]},"user":{"has":{"permission":{"$":["id",["user-has-permission","permission"]]}}}},"permission":{"has":{"name":{"$":["name"]}}},"name":{"$":["name"]},"is of":{"role":{"$":["id",["role-has-permission","permission"]]},"user":{"$":["id",["user-has-permission","permission"]]},"api key":{"$":["id",["api key-has-permission","permission"]]}},"user":{"has":{"permission":{"$":["id",["user-has-permission","permission"]]}}}},"role":{"has":{"name":{"$":["name"]},"permission":{"$":["id",["role-has-permission","role"]]},"user":{"has":{"role":{"$":["id",["user-has-role","role"]]}}}},"role":{"has":{"name":{"$":["name"]},"permission":{"$":["id",["role-has-permission","role"]]}}},"name":{"$":["name"]},"user":{"has":{"role":{"$":["id",["user-has-role","role"]]}}},"is of":{"user":{"$":["id",["user-has-role","role"]]},"api key":{"$":["id",["api key-has-role","role"]]}}},"role-has-permission":{"role":{"$":["role",["role","id"]]},"permission":{"$":["permission",["permission","id"]]},"has":{"permission":{"$":["permission",["permission","id"]]}},"is of":{"role":{"$":["role",["role","id"]]}}},"actor":{"is of":{"user":{"$":["id",["user","actor"]]}},"api key":{"$":["id",["api key","is of-actor"]]},"has":{"api key":{"$":["id",["api key","is of-actor"]]}}},"user":{"actor":{"$":["actor",["actor","id"]]},"has":{"actor":{"$":["actor",["actor","id"]]},"username":{"$":["username"]},"password":{"$":["password"]},"role":{"$":["id",["user-has-role","user"]]},"user":{"has":{"role":{"$":["id",["user-has-role","user"]]},"permission":{"$":["id",["user-has-permission","user"]]}}},"permission":{"$":["id",["user-has-permission","user"]]}},"user":{"has":{"username":{"$":["username"]},"password":{"$":["password"]},"role":{"$":["id",["user-has-role","user"]]},"permission":{"$":["id",["user-has-permission","user"]]}}},"username":{"$":["username"]},"password":{"$":["password"]}},"user-has-role":{"user":{"$":["user",["user","id"]],"has":{"role":{"has":{"expiry date":{"$":["expiry date"]}}}}},"role":{"$":["role",["role","id"]]},"has":{"role":{"$":["role",["role","id"]]},"expiry date":{"$":["expiry date"]}},"is of":{"user":{"$":["user",["user","id"]]}},"expiry date":{"$":["expiry date"]}},"user-has-permission":{"user":{"$":["user",["user","id"]],"has":{"permission":{"has":{"expiry date":{"$":["expiry date"]}}}}},"permission":{"$":["permission",["permission","id"]]},"has":{"permission":{"$":["permission",["permission","id"]]},"expiry date":{"$":["expiry date"]}},"is of":{"user":{"$":["user",["user","id"]]}},"expiry date":{"$":["expiry date"]}},"api key":{"has":{"key":{"$":["key"]},"expiry date":{"$":["expiry date"]},"role":{"$":["id",["api key-has-role","api key"]]},"permission":{"$":["id",["api key-has-permission","api key"]]},"name":{"$":["name"]},"description":{"$":["description"]}},"api key":{"has":{"key":{"$":["key"]},"expiry date":{"$":["expiry date"]},"role":{"$":["id",["api key-has-role","api key"]]},"permission":{"$":["id",["api key-has-permission","api key"]]},"name":{"$":["name"]},"description":{"$":["description"]}},"is of":{"actor":{"$":["id",["api key-is of-actor","api key"]]}}},"key":{"$":["key"]},"expiry date":{"$":["expiry date"]},"is of":{"actor":{"$":["is of-actor",["actor","id"]]}},"name":{"$":["name"]},"description":{"$":["description"]}},"api key-has-role":{"api key":{"$":["api key",["api key","id"]]},"role":{"$":["role",["role","id"]]},"has":{"role":{"$":["role",["role","id"]]}},"is of":{"api key":{"$":["api key",["api key","id"]]}}},"api key-has-permission":{"api key":{"$":["api key",["api key","id"]]},"permission":{"$":["permission",["permission","id"]]},"has":{"permission":{"$":["permission",["permission","id"]]}},"is of":{"api key":{"$":["api key",["api key","id"]]}}}},"rules":[],"synonyms":{"user role":"user-has-role","user permission":"user-has-permission"},"lfInfo":{"rules":{}}},"[\"Model\",[\"Vocabulary\",\"Type\",[\"Attributes\"]],[\"Term\",\"Integer\",\"Type\",[\"Attributes\"]],[\"Term\",\"Real\",\"Type\",[\"Attributes\"]],[\"Term\",\"Text\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time Range\",\"Type\",[\"Attributes\"]],[\"Term\",\"Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Interval\",\"Type\",[\"Attributes\"]],[\"Term\",\"File\",\"Type\",[\"Attributes\"]],[\"Term\",\"Big Integer\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Integer'.\"]]],[\"Term\",\"Big Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Big Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Big Integer'.\"]]],[\"Term\",\"Case Insensitive Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that is compared case insensitively.\"]]],[\"Term\",\"JSON\",\"Type\",[\"Attributes\",[\"Note\",\"A 'Text' type that will only allow valid JSON.\"]]],[\"Term\",\"Hashed\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a hash.\"]]],[\"Term\",\"SHA\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a sha256 hash.\"]]],[\"Term\",\"Length\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Name\",\"Current Time\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Length\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Text\",\"Type\"]]],[\"Note\",\"Length in characters\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Text\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Length\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Text has exactly one Length\"]]]]],[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"],[\"Attributes\",[\"Note\",\"Casts the JSON to a text string\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"JSON\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Text\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"JSON\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each JSON is represented by exactly one Text\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"starts with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"ends with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"contains\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is contained in\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"Term\",\"Short Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]]]],[\"Term\",\"Red Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Green Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Blue Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Alpha Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Color\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Red Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Red Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Red Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Red Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Green Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Green Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Green Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Green Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Blue Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Blue Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Blue Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Blue Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Alpha Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Alpha Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Alpha Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Alpha Component\"]]]]],[\"Term\",\"Filename\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"HRef\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Type\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Disposition\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Size\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"WebResource\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"JSON\",\"Type\"]],[\"Note\",\"A 'JSON' type that will only allow valid JSON with an specific schema.\"]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Filename\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Filename\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Filename\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one Filename.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"HRef\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"HRef\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"HRef\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one HRef.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Type\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Type.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Disposition\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Disposition\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Disposition\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Disposition.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Size\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Size\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Size.\"]]]]],[\"Vocabulary\",\"Default\",[\"Attributes\"]],[\"Vocabulary\",\"migrations\",[\"Attributes\"]],[\"Term\",\"model name\",\"migrations\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"executed migrations\",\"migrations\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"JSON\",\"Type\"]]]],[\"Term\",\"lock time\",\"migrations\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"Term\",\"migration\",\"migrations\",[\"Attributes\",[\"ReferenceScheme\",[\"Term\",\"model name\",\"migrations\"]],[\"DatabaseIDField\",\"model name\"]]],[\"FactType\",[\"Term\",\"migration\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"model name\",\"migrations\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"model name\",\"migrations\"],[\"Verb\",\"is of\",false],[\"Term\",\"migration\",\"migrations\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"migration\",\"migrations\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"model name\",\"migrations\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"migration\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"model name\",\"migrations\"]],[\"RoleBinding\",[\"Term\",\"migration\",\"migrations\"],0],[\"RoleBinding\",[\"Term\",\"model name\",\"migrations\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each migration has exactly one model name\"]]]]],[\"FactType\",[\"Term\",\"migration\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"executed migrations\",\"migrations\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"executed migrations\",\"migrations\"],[\"Verb\",\"is of\",false],[\"Term\",\"migration\",\"migrations\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"migration\",\"migrations\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"executed migrations\",\"migrations\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"migration\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"executed migrations\",\"migrations\"]],[\"RoleBinding\",[\"Term\",\"migration\",\"migrations\"],0],[\"RoleBinding\",[\"Term\",\"executed migrations\",\"migrations\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each migration has exactly one executed migrations\"]]]]],[\"Term\",\"migration lock\",\"migrations\",[\"Attributes\",[\"ReferenceScheme\",[\"Term\",\"model name\",\"migrations\"]],[\"DatabaseIDField\",\"model name\"]]],[\"FactType\",[\"Term\",\"migration lock\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"model name\",\"migrations\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"model name\",\"migrations\"],[\"Verb\",\"is of\",false],[\"Term\",\"migration lock\",\"migrations\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"migration lock\",\"migrations\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"model name\",\"migrations\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"migration lock\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"model name\",\"migrations\"]],[\"RoleBinding\",[\"Term\",\"migration lock\",\"migrations\"],0],[\"RoleBinding\",[\"Term\",\"model name\",\"migrations\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each migration lock has exactly one model name\"]]]]],[\"Term\",\"migration key\",\"migrations\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"start time\",\"migrations\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"Term\",\"last run time\",\"migrations\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"Term\",\"run count\",\"migrations\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"migrated row count\",\"migrations\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"error count\",\"migrations\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"converged time\",\"migrations\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"Term\",\"migration status\",\"migrations\",[\"Attributes\",[\"ReferenceScheme\",[\"Term\",\"migration key\",\"migrations\"]],[\"DatabaseIDField\",\"migration key\"]]],[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"migration key\",\"migrations\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"migration key\",\"migrations\"],[\"Verb\",\"is of\",false],[\"Term\",\"migration status\",\"migrations\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"migration status\",\"migrations\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"migration key\",\"migrations\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"migration key\",\"migrations\"]],[\"RoleBinding\",[\"Term\",\"migration status\",\"migrations\"],0],[\"RoleBinding\",[\"Term\",\"migration key\",\"migrations\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each migration status has exactly one migration key\"]]]]],[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"start time\",\"migrations\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"start time\",\"migrations\"],[\"Verb\",\"is of\",false],[\"Term\",\"migration status\",\"migrations\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"migration status\",\"migrations\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"start time\",\"migrations\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"start time\",\"migrations\"]],[\"RoleBinding\",[\"Term\",\"migration status\",\"migrations\"],0],[\"RoleBinding\",[\"Term\",\"start time\",\"migrations\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each migration status has at most one start time\"]]]]],[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"last run time\",\"migrations\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"last run time\",\"migrations\"],[\"Verb\",\"is of\",false],[\"Term\",\"migration status\",\"migrations\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"migration status\",\"migrations\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"last run time\",\"migrations\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"last run time\",\"migrations\"]],[\"RoleBinding\",[\"Term\",\"migration status\",\"migrations\"],0],[\"RoleBinding\",[\"Term\",\"last run time\",\"migrations\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each migration status has at most one last run time\"]]]]],[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"run count\",\"migrations\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"run count\",\"migrations\"],[\"Verb\",\"is of\",false],[\"Term\",\"migration status\",\"migrations\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"migration status\",\"migrations\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"run count\",\"migrations\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"run count\",\"migrations\"]],[\"RoleBinding\",[\"Term\",\"migration status\",\"migrations\"],0],[\"RoleBinding\",[\"Term\",\"run count\",\"migrations\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each migration status has exactly one run count\"]]]]],[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"migrated row count\",\"migrations\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"migrated row count\",\"migrations\"],[\"Verb\",\"is of\",false],[\"Term\",\"migration status\",\"migrations\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"migration status\",\"migrations\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"migrated row count\",\"migrations\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"migrated row count\",\"migrations\"]],[\"RoleBinding\",[\"Term\",\"migration status\",\"migrations\"],0],[\"RoleBinding\",[\"Term\",\"migrated row count\",\"migrations\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each migration status has at most one migrated row count\"]]]]],[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"error count\",\"migrations\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"error count\",\"migrations\"],[\"Verb\",\"is of\",false],[\"Term\",\"migration status\",\"migrations\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"migration status\",\"migrations\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"error count\",\"migrations\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"error count\",\"migrations\"]],[\"RoleBinding\",[\"Term\",\"migration status\",\"migrations\"],0],[\"RoleBinding\",[\"Term\",\"error count\",\"migrations\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each migration status has at most one error count\"]]]]],[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"is backing off\",false],[\"Attributes\"]],[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"converged time\",\"migrations\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"converged time\",\"migrations\"],[\"Verb\",\"is of\",false],[\"Term\",\"migration status\",\"migrations\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"migration status\",\"migrations\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"converged time\",\"migrations\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"migration status\",\"migrations\"],[\"Verb\",\"has\",false],[\"Term\",\"converged time\",\"migrations\"]],[\"RoleBinding\",[\"Term\",\"migration status\",\"migrations\"],0],[\"RoleBinding\",[\"Term\",\"converged time\",\"migrations\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each migration status has at most one converged time\"]]]]]]":{"tables":{"migration":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Short Text","fieldName":"model name","required":true,"references":{"resourceName":"model name","fieldName":null},"index":"PRIMARY KEY"},{"dataType":"JSON","fieldName":"executed migrations","required":true,"references":{"resourceName":"executed migrations","fieldName":null}}],"primitive":false,"name":"migration","indexes":[],"idField":"model name","resourceName":"migration","modelName":"migration","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"model name"},"migration lock":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Short Text","fieldName":"model name","required":true,"references":{"resourceName":"model name","fieldName":null},"index":"PRIMARY KEY"}],"primitive":false,"name":"migration lock","indexes":[],"idField":"model name","resourceName":"migration lock","modelName":"migration lock","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"model name"},"migration status":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Short Text","fieldName":"migration key","required":true,"references":{"resourceName":"migration key","fieldName":null},"index":"PRIMARY KEY"},{"dataType":"Date Time","fieldName":"start time","required":false,"references":{"resourceName":"start time","fieldName":null}},{"dataType":"Date Time","fieldName":"last run time","required":false,"references":{"resourceName":"last run time","fieldName":null}},{"dataType":"Integer","fieldName":"run count","required":true,"references":{"resourceName":"run count","fieldName":null}},{"dataType":"Integer","fieldName":"migrated row count","required":false,"references":{"resourceName":"migrated row count","fieldName":null}},{"dataType":"Integer","fieldName":"error count","required":false,"references":{"resourceName":"error count","fieldName":null}},{"dataType":"Boolean","fieldName":"is backing off","required":true},{"dataType":"Date Time","fieldName":"converged time","required":false,"references":{"resourceName":"converged time","fieldName":null}}],"primitive":false,"name":"migration status","indexes":[],"idField":"migration key","resourceName":"migration status","modelName":"migration status","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"migration key"}},"functions":{"trigger_update_modified_at":{"type":"trigger","body":"NEW.\"modified at\" = NOW();\nRETURN NEW;","language":"plpgsql"}},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"model name":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"executed migrations":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"lock time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"migration":{"has":{"model name":{"$":["model name"]},"executed migrations":{"$":["executed migrations"]}},"migration":{"has":{"model name":{"$":["model name"]},"executed migrations":{"$":["executed migrations"]}}},"model name":{"$":["model name"]},"executed migrations":{"$":["executed migrations"]}},"migration lock":{"has":{"model name":{"$":["model name"]}},"migration lock":{"has":{"model name":{"$":["model name"]}}},"model name":{"$":["model name"]}},"migration key":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"start time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"last run time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"run count":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"migrated row count":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"error count":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"converged time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"migration status":{"has":{"migration key":{"$":["migration key"]},"start time":{"$":["start time"]},"last run time":{"$":["last run time"]},"run count":{"$":["run count"]},"migrated row count":{"$":["migrated row count"]},"error count":{"$":["error count"]},"converged time":{"$":["converged time"]}},"migration status":{"has":{"migration key":{"$":["migration key"]},"start time":{"$":["start time"]},"last run time":{"$":["last run time"]},"run count":{"$":["run count"]},"migrated row count":{"$":["migrated row count"]},"error count":{"$":["error count"]},"converged time":{"$":["converged time"]}}},"migration key":{"$":["migration key"]},"start time":{"$":["start time"]},"last run time":{"$":["last run time"]},"run count":{"$":["run count"]},"migrated row count":{"$":["migrated row count"]},"error count":{"$":["error count"]},"is backing off":{"$":["is backing off"]},"converged time":{"$":["converged time"]}}},"rules":[],"synonyms":{},"lfInfo":{"rules":{}}},"[\"Model\",[\"Vocabulary\",\"Type\",[\"Attributes\"]],[\"Term\",\"Integer\",\"Type\",[\"Attributes\"]],[\"Term\",\"Real\",\"Type\",[\"Attributes\"]],[\"Term\",\"Text\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time Range\",\"Type\",[\"Attributes\"]],[\"Term\",\"Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Interval\",\"Type\",[\"Attributes\"]],[\"Term\",\"File\",\"Type\",[\"Attributes\"]],[\"Term\",\"Big Integer\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Integer'.\"]]],[\"Term\",\"Big Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Big Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Big Integer'.\"]]],[\"Term\",\"Case Insensitive Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that is compared case insensitively.\"]]],[\"Term\",\"JSON\",\"Type\",[\"Attributes\",[\"Note\",\"A 'Text' type that will only allow valid JSON.\"]]],[\"Term\",\"Hashed\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a hash.\"]]],[\"Term\",\"SHA\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a sha256 hash.\"]]],[\"Term\",\"Length\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Name\",\"Current Time\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Length\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Text\",\"Type\"]]],[\"Note\",\"Length in characters\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Text\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Length\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Text has exactly one Length\"]]]]],[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"],[\"Attributes\",[\"Note\",\"Casts the JSON to a text string\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"JSON\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Text\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"JSON\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each JSON is represented by exactly one Text\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"starts with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"ends with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"contains\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is contained in\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"Term\",\"Short Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]]]],[\"Term\",\"Red Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Green Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Blue Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Alpha Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Color\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Red Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Red Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Red Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Red Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Green Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Green Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Green Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Green Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Blue Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Blue Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Blue Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Blue Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Alpha Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Alpha Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Alpha Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Alpha Component\"]]]]],[\"Term\",\"Filename\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"HRef\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Type\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Disposition\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Size\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"WebResource\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"JSON\",\"Type\"]],[\"Note\",\"A 'JSON' type that will only allow valid JSON with an specific schema.\"]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Filename\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Filename\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Filename\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one Filename.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"HRef\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"HRef\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"HRef\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one HRef.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Type\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Type.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Disposition\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Disposition\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Disposition\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Disposition.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Size\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Size\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Size.\"]]]]],[\"Vocabulary\",\"Default\",[\"Attributes\"]],[\"Vocabulary\",\"tasks\",[\"Attributes\"]],[\"Term\",\"id\",\"tasks\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Big Serial\",\"Type\"]]]],[\"Term\",\"actor\",\"tasks\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"attempt count\",\"tasks\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"attempt limit\",\"tasks\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"cron expression\",\"tasks\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"error message\",\"tasks\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"handler\",\"tasks\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"key\",\"tasks\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"parameter set\",\"tasks\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"JSON\",\"Type\"]]]],[\"Term\",\"status\",\"tasks\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"time\",\"tasks\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"Term\",\"task\",\"tasks\",[\"Attributes\"]],[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"id\",\"tasks\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"id\",\"tasks\"],[\"Verb\",\"is of\",false],[\"Term\",\"task\",\"tasks\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"task\",\"tasks\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"id\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"id\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"id\",\"tasks\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each task has exactly one id\"]]]]],[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"key\",\"tasks\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"key\",\"tasks\"],[\"Verb\",\"is of\",false],[\"Term\",\"task\",\"tasks\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"task\",\"tasks\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"key\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"key\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"key\",\"tasks\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each task has at most one key\"]]]]],[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"is created by\",false],[\"Term\",\"actor\",\"tasks\"],[\"Attributes\",[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"task\",\"tasks\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"actor\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"is created by\",false],[\"Term\",\"actor\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"actor\",\"tasks\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each task is created by exactly one actor\"]]]]],[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"is executed by\",false],[\"Term\",\"handler\",\"tasks\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"handler\",\"tasks\"],[\"Verb\",\"executes\",false],[\"Term\",\"task\",\"tasks\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"task\",\"tasks\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"handler\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"is executed by\",false],[\"Term\",\"handler\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"handler\",\"tasks\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each task is executed by exactly one handler\"]]]]],[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"is executed with\",false],[\"Term\",\"parameter set\",\"tasks\"],[\"Attributes\",[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"task\",\"tasks\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"parameter set\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"is executed with\",false],[\"Term\",\"parameter set\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"parameter set\",\"tasks\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each task is executed with at most one parameter set\"]]]]],[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"is scheduled with\",false],[\"Term\",\"cron expression\",\"tasks\"],[\"Attributes\",[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"task\",\"tasks\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"cron expression\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"is scheduled with\",false],[\"Term\",\"cron expression\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"cron expression\",\"tasks\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each task is scheduled with at most one cron expression\"]]]]],[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"is scheduled to execute on\",false],[\"Term\",\"time\",\"tasks\"],[\"Attributes\",[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"task\",\"tasks\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"time\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"is scheduled to execute on\",false],[\"Term\",\"time\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"time\",\"tasks\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each task is scheduled to execute on at most one time\"]]]]],[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"status\",\"tasks\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"status\",\"tasks\"],[\"Verb\",\"is of\",false],[\"Term\",\"task\",\"tasks\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"task\",\"tasks\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"status\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"status\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"status\",\"tasks\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each task has exactly one status\"]]],[\"Definition\",[\"Enum\",[\"Text\",\"queued\"],[\"Text\",\"cancelled\"],[\"Text\",\"succeeded\"],[\"Text\",\"failed\"]]]]],[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"started on\",false],[\"Term\",\"time\",\"tasks\"],[\"Attributes\",[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"task\",\"tasks\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"time\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"started on\",false],[\"Term\",\"time\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"time\",\"tasks\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each task started on at most one time\"]]]]],[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"ended on\",false],[\"Term\",\"time\",\"tasks\"],[\"Attributes\",[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"task\",\"tasks\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"time\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"ended on\",false],[\"Term\",\"time\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"time\",\"tasks\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each task ended on at most one time\"]]]]],[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"error message\",\"tasks\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"error message\",\"tasks\"],[\"Verb\",\"is of\",false],[\"Term\",\"task\",\"tasks\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"task\",\"tasks\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"error message\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"error message\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"error message\",\"tasks\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each task has at most one error message\"]]]]],[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"attempt count\",\"tasks\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"attempt count\",\"tasks\"],[\"Verb\",\"is of\",false],[\"Term\",\"task\",\"tasks\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"task\",\"tasks\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"attempt count\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"attempt count\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"attempt count\",\"tasks\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each task has exactly one attempt count\"]]]]],[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"attempt limit\",\"tasks\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"attempt limit\",\"tasks\"],[\"Verb\",\"is of\",false],[\"Term\",\"task\",\"tasks\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"task\",\"tasks\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"attempt limit\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"attempt limit\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"attempt limit\",\"tasks\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each task has exactly one attempt limit\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"task\",\"tasks\"]],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",1],[\"Term\",\"attempt limit\",\"tasks\"],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"attempt limit\",\"tasks\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Integer\",1]]],[\"RoleBinding\",[\"Term\",\"attempt limit\",\"tasks\"],1],[\"RoleBinding\",[\"Term\",\"Integer\",\"Type\",[\"Integer\",1]],[\"Integer\",1]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"attempt limit\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"attempt limit\",\"tasks\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each task has an attempt limit that is greater than or equal to 1\"]]]]],[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"handler\",\"tasks\"],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",1],[\"Term\",\"task\",\"tasks\"],[\"Conjunction\",[\"ExistentialQuantification\",[\"Variable\",[\"Number\",2],[\"Term\",\"cron expression\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"is scheduled with\",false],[\"Term\",\"cron expression\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],1],[\"RoleBinding\",[\"Term\",\"cron expression\",\"tasks\"],2]]],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",3],[\"Term\",\"status\",\"tasks\"],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"status\",\"tasks\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Text\",\"queued\"]]],[\"RoleBinding\",[\"Term\",\"status\",\"tasks\"],3],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\",[\"Text\",\"queued\"]],[\"Text\",\"queued\"]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"status\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],1],[\"RoleBinding\",[\"Term\",\"status\",\"tasks\"],3]]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"handler\",\"tasks\"],[\"Verb\",\"executes\",false],[\"Term\",\"task\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"handler\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],1]]]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",4],[\"Term\",\"task\",\"tasks\"],[\"Conjunction\",[\"ExistentialQuantification\",[\"Variable\",[\"Number\",5],[\"Term\",\"cron expression\",\"tasks\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"is scheduled with\",false],[\"Term\",\"cron expression\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],4],[\"RoleBinding\",[\"Term\",\"cron expression\",\"tasks\"],5]]],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",6],[\"Term\",\"status\",\"tasks\"],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"status\",\"tasks\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Text\",\"queued\"]]],[\"RoleBinding\",[\"Term\",\"status\",\"tasks\"],6],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\",[\"Text\",\"queued\"]],[\"Text\",\"queued\"]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"task\",\"tasks\"],[\"Verb\",\"has\",false],[\"Term\",\"status\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],4],[\"RoleBinding\",[\"Term\",\"status\",\"tasks\"],6]]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"handler\",\"tasks\"],[\"Verb\",\"executes\",false],[\"Term\",\"task\",\"tasks\"]],[\"RoleBinding\",[\"Term\",\"handler\",\"tasks\"],0],[\"RoleBinding\",[\"Term\",\"task\",\"tasks\"],4]]]]],[\"StructuredEnglish\",\"It is necessary that each handler that executes a task that is scheduled with a cron expression and has a status that is equal to \\\"queued\\\", executes at most one task that is scheduled with a cron expression and has a status that is equal to \\\"queued\\\".\"]]]":{"tables":{"task":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Big Serial","fieldName":"id","required":true,"references":{"resourceName":"id","fieldName":null},"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"key","required":false,"references":{"resourceName":"key","fieldName":null}},{"dataType":"Integer","fieldName":"is created by-actor","required":true,"references":{"resourceName":"actor","fieldName":null}},{"dataType":"Short Text","fieldName":"is executed by-handler","required":true,"references":{"resourceName":"handler","fieldName":null}},{"dataType":"JSON","fieldName":"is executed with-parameter set","required":false,"references":{"resourceName":"parameter set","fieldName":null}},{"dataType":"Short Text","fieldName":"is scheduled with-cron expression","required":false,"references":{"resourceName":"cron expression","fieldName":null}},{"dataType":"Date Time","fieldName":"is scheduled to execute on-time","required":false,"references":{"resourceName":"time","fieldName":null}},{"dataType":"Short Text","fieldName":"status","required":true,"references":{"resourceName":"status","fieldName":null},"checks":[["In",["Field","status"],["Text","queued"],["Text","cancelled"],["Text","succeeded"],["Text","failed"]]]},{"dataType":"Date Time","fieldName":"started on-time","required":false,"references":{"resourceName":"time","fieldName":null}},{"dataType":"Date Time","fieldName":"ended on-time","required":false,"references":{"resourceName":"time","fieldName":null}},{"dataType":"Short Text","fieldName":"error message","required":false,"references":{"resourceName":"error message","fieldName":null}},{"dataType":"Integer","fieldName":"attempt count","required":true,"references":{"resourceName":"attempt count","fieldName":null}},{"dataType":"Integer","fieldName":"attempt limit","required":true,"references":{"resourceName":"attempt limit","fieldName":null}}],"primitive":false,"name":"task","indexes":[],"idField":"id","resourceName":"task","modelName":"task","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id"}},"functions":{"trigger_update_modified_at":{"type":"trigger","body":"NEW.\"modified at\" = NOW();\nRETURN NEW;","language":"plpgsql"}},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"id":{"Big Serial":{"$":["Big Serial"]},"has":{"Big Serial":{"$":["Big Serial"]}}},"actor":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"attempt count":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"attempt limit":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"cron expression":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"error message":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"handler":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"key":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"parameter set":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"status":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"task":{"has":{"id":{"$":["id"]},"key":{"$":["key"]},"status":{"$":["status"]},"error message":{"$":["error message"]},"attempt count":{"$":["attempt count"]},"attempt limit":{"$":["attempt limit"]}},"task":{"has":{"id":{"$":["id"]},"key":{"$":["key"]},"status":{"$":["status"]},"error message":{"$":["error message"]},"attempt count":{"$":["attempt count"]},"attempt limit":{"$":["attempt limit"]}},"is created by":{"actor":{"$":["is created by-actor"]}},"is executed by":{"handler":{"$":["is executed by-handler"]}},"is executed with":{"parameter set":{"$":["is executed with-parameter set"]}},"is scheduled with":{"cron expression":{"$":["is scheduled with-cron expression"]}},"is scheduled to execute on":{"time":{"$":["is scheduled to execute on-time"]}},"started on":{"time":{"$":["started on-time"]}},"ended on":{"time":{"$":["ended on-time"]}}},"id":{"$":["id"]},"key":{"$":["key"]},"is created by":{"actor":{"$":["is created by-actor"]}},"is executed by":{"handler":{"$":["is executed by-handler"]}},"is executed with":{"parameter set":{"$":["is executed with-parameter set"]}},"is scheduled with":{"cron expression":{"$":["is scheduled with-cron expression"]}},"is scheduled to execute on":{"time":{"$":["is scheduled to execute on-time"]}},"status":{"$":["status"]},"started on":{"time":{"$":["started on-time"]}},"ended on":{"time":{"$":["ended on-time"]}},"error message":{"$":["error message"]},"attempt count":{"$":["attempt count"]},"attempt limit":{"$":["attempt limit"]}}},"rules":[["Rule",["Body",["Equals",["SelectQuery",["Select",[["Count","*"]]],["From",["Alias",["Table","task"],"task.0"]],["Where",["Not",["And",["LessThanOrEqual",["Integer",1],["ReferencedField","task.0","attempt limit"]],["Exists",["ReferencedField","task.0","attempt limit"]]]]]],["Number",0]]],["StructuredEnglish","It is necessary that each task has an attempt limit that is greater than or equal to 1"]],["Rule",["Body",["NotExists",["SelectQuery",["Select",[["ReferencedField","task.1","is executed by-handler"]]],["From",["Alias",["Table","task"],"task.1"]],["Where",["And",["Exists",["ReferencedField","task.1","is scheduled with-cron expression"]],["Equals",["Text","queued"],["ReferencedField","task.1","status"]],["Exists",["ReferencedField","task.1","status"]],["GreaterThanOrEqual",["SelectQuery",["Select",[["Count","*"]]],["From",["Alias",["Table","task"],"task.4"]],["Where",["And",["Exists",["ReferencedField","task.4","is scheduled with-cron expression"]],["Equals",["Text","queued"],["ReferencedField","task.4","status"]],["Exists",["ReferencedField","task.4","status"]],["Equals",["ReferencedField","task.4","is executed by-handler"],["ReferencedField","task.1","is executed by-handler"]]]]],["Number",2]]]]]]],["StructuredEnglish","It is necessary that each handler that executes a task that is scheduled with a cron expression and has a status that is equal to \"queued\", executes at most one task that is scheduled with a cron expression and has a status that is equal to \"queued\"."]]],"synonyms":{},"lfInfo":{"rules":{"It is necessary that each task has an attempt limit that is greater than or equal to 1":{"root":{"table":"task","alias":"task.0"}},"It is necessary that each handler that executes a task that is scheduled with a cron expression and has a status that is equal to \"queued\", executes at most one task that is scheduled with a cron expression and has a status that is equal to \"queued\".":{"root":{"table":"task","alias":"task.1"}}}}},"[\"Model\",[\"Vocabulary\",\"Type\",[\"Attributes\"]],[\"Term\",\"Integer\",\"Type\",[\"Attributes\"]],[\"Term\",\"Real\",\"Type\",[\"Attributes\"]],[\"Term\",\"Text\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time Range\",\"Type\",[\"Attributes\"]],[\"Term\",\"Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Interval\",\"Type\",[\"Attributes\"]],[\"Term\",\"File\",\"Type\",[\"Attributes\"]],[\"Term\",\"Big Integer\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Integer'.\"]]],[\"Term\",\"Big Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Big Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Big Integer'.\"]]],[\"Term\",\"Case Insensitive Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that is compared case insensitively.\"]]],[\"Term\",\"JSON\",\"Type\",[\"Attributes\",[\"Note\",\"A 'Text' type that will only allow valid JSON.\"]]],[\"Term\",\"Hashed\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a hash.\"]]],[\"Term\",\"SHA\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a sha256 hash.\"]]],[\"Term\",\"Length\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Name\",\"Current Time\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Length\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Text\",\"Type\"]]],[\"Note\",\"Length in characters\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Text\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Length\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Text has exactly one Length\"]]]]],[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"],[\"Attributes\",[\"Note\",\"Casts the JSON to a text string\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"JSON\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Text\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"JSON\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each JSON is represented by exactly one Text\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"starts with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"ends with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"contains\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is contained in\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"Term\",\"Short Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]]]],[\"Term\",\"Red Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Green Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Blue Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Alpha Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Color\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Red Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Red Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Red Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Red Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Green Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Green Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Green Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Green Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Blue Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Blue Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Blue Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Blue Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Alpha Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Alpha Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Alpha Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Alpha Component\"]]]]],[\"Term\",\"Filename\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"HRef\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Type\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Disposition\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Size\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"WebResource\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"JSON\",\"Type\"]],[\"Note\",\"A 'JSON' type that will only allow valid JSON with an specific schema.\"]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Filename\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Filename\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Filename\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one Filename.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"HRef\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"HRef\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"HRef\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one HRef.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Type\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Type.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Disposition\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Disposition\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Disposition\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Disposition.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Size\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Size\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Size.\"]]]]],[\"Vocabulary\",\"Default\",[\"Attributes\"]],[\"Vocabulary\",\"webresource\",[\"Attributes\"]],[\"Term\",\"actor\",\"webresource\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"expiry date\",\"webresource\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"Term\",\"uuid\",\"webresource\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"resource name\",\"webresource\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"field name\",\"webresource\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"resource id\",\"webresource\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"upload id\",\"webresource\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"file key\",\"webresource\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"status\",\"webresource\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"filename\",\"webresource\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"content type\",\"webresource\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"size\",\"webresource\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Big Integer\",\"Type\"]]]],[\"Term\",\"chunk size\",\"webresource\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"valid until date\",\"webresource\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"Term\",\"multipart upload\",\"webresource\",[\"Attributes\"]],[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"uuid\",\"webresource\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"uuid\",\"webresource\"],[\"Verb\",\"is of\",false],[\"Term\",\"multipart upload\",\"webresource\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"multipart upload\",\"webresource\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"uuid\",\"webresource\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"uuid\",\"webresource\"]],[\"RoleBinding\",[\"Term\",\"multipart upload\",\"webresource\"],0],[\"RoleBinding\",[\"Term\",\"uuid\",\"webresource\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each multipart upload has exactly one uuid\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"uuid\",\"webresource\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"multipart upload\",\"webresource\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"uuid\",\"webresource\"],[\"Verb\",\"is of\",false],[\"Term\",\"multipart upload\",\"webresource\"]],[\"RoleBinding\",[\"Term\",\"uuid\",\"webresource\"],0],[\"RoleBinding\",[\"Term\",\"multipart upload\",\"webresource\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each uuid is of exactly one multipart upload\"]]]]],[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"resource name\",\"webresource\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"resource name\",\"webresource\"],[\"Verb\",\"is of\",false],[\"Term\",\"multipart upload\",\"webresource\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"multipart upload\",\"webresource\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"resource name\",\"webresource\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"resource name\",\"webresource\"]],[\"RoleBinding\",[\"Term\",\"multipart upload\",\"webresource\"],0],[\"RoleBinding\",[\"Term\",\"resource name\",\"webresource\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each multipart upload has exactly one resource name\"]]]]],[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"field name\",\"webresource\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"field name\",\"webresource\"],[\"Verb\",\"is of\",false],[\"Term\",\"multipart upload\",\"webresource\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"multipart upload\",\"webresource\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"field name\",\"webresource\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"field name\",\"webresource\"]],[\"RoleBinding\",[\"Term\",\"multipart upload\",\"webresource\"],0],[\"RoleBinding\",[\"Term\",\"field name\",\"webresource\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each multipart upload has exactly one field name\"]]]]],[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"resource id\",\"webresource\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"resource id\",\"webresource\"],[\"Verb\",\"is of\",false],[\"Term\",\"multipart upload\",\"webresource\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"multipart upload\",\"webresource\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"resource id\",\"webresource\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"resource id\",\"webresource\"]],[\"RoleBinding\",[\"Term\",\"multipart upload\",\"webresource\"],0],[\"RoleBinding\",[\"Term\",\"resource id\",\"webresource\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each multipart upload has exactly one resource id\"]]]]],[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"upload id\",\"webresource\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"upload id\",\"webresource\"],[\"Verb\",\"is of\",false],[\"Term\",\"multipart upload\",\"webresource\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"multipart upload\",\"webresource\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"upload id\",\"webresource\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"upload id\",\"webresource\"]],[\"RoleBinding\",[\"Term\",\"multipart upload\",\"webresource\"],0],[\"RoleBinding\",[\"Term\",\"upload id\",\"webresource\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each multipart upload has exactly one upload id\"]]]]],[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"file key\",\"webresource\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"file key\",\"webresource\"],[\"Verb\",\"is of\",false],[\"Term\",\"multipart upload\",\"webresource\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"multipart upload\",\"webresource\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"file key\",\"webresource\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"file key\",\"webresource\"]],[\"RoleBinding\",[\"Term\",\"multipart upload\",\"webresource\"],0],[\"RoleBinding\",[\"Term\",\"file key\",\"webresource\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each multipart upload has exactly one file key\"]]]]],[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"status\",\"webresource\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"status\",\"webresource\"],[\"Verb\",\"is of\",false],[\"Term\",\"multipart upload\",\"webresource\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"multipart upload\",\"webresource\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"status\",\"webresource\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"status\",\"webresource\"]],[\"RoleBinding\",[\"Term\",\"multipart upload\",\"webresource\"],0],[\"RoleBinding\",[\"Term\",\"status\",\"webresource\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each multipart upload has exactly one status\"]]],[\"Definition\",[\"Enum\",[\"Text\",\"pending\"],[\"Text\",\"completed\"],[\"Text\",\"cancelled\"]]]]],[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"filename\",\"webresource\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"filename\",\"webresource\"],[\"Verb\",\"is of\",false],[\"Term\",\"multipart upload\",\"webresource\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"multipart upload\",\"webresource\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"filename\",\"webresource\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"filename\",\"webresource\"]],[\"RoleBinding\",[\"Term\",\"multipart upload\",\"webresource\"],0],[\"RoleBinding\",[\"Term\",\"filename\",\"webresource\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each multipart upload has exactly one filename\"]]]]],[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"content type\",\"webresource\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"content type\",\"webresource\"],[\"Verb\",\"is of\",false],[\"Term\",\"multipart upload\",\"webresource\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"multipart upload\",\"webresource\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"content type\",\"webresource\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"content type\",\"webresource\"]],[\"RoleBinding\",[\"Term\",\"multipart upload\",\"webresource\"],0],[\"RoleBinding\",[\"Term\",\"content type\",\"webresource\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each multipart upload has exactly one content type\"]]]]],[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"size\",\"webresource\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"size\",\"webresource\"],[\"Verb\",\"is of\",false],[\"Term\",\"multipart upload\",\"webresource\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"multipart upload\",\"webresource\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"size\",\"webresource\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"size\",\"webresource\"]],[\"RoleBinding\",[\"Term\",\"multipart upload\",\"webresource\"],0],[\"RoleBinding\",[\"Term\",\"size\",\"webresource\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each multipart upload has exactly one size\"]]]]],[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"chunk size\",\"webresource\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"chunk size\",\"webresource\"],[\"Verb\",\"is of\",false],[\"Term\",\"multipart upload\",\"webresource\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"multipart upload\",\"webresource\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"chunk size\",\"webresource\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"chunk size\",\"webresource\"]],[\"RoleBinding\",[\"Term\",\"multipart upload\",\"webresource\"],0],[\"RoleBinding\",[\"Term\",\"chunk size\",\"webresource\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each multipart upload has exactly one chunk size\"]]]]],[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"expiry date\",\"webresource\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"expiry date\",\"webresource\"],[\"Verb\",\"is of\",false],[\"Term\",\"multipart upload\",\"webresource\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"multipart upload\",\"webresource\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"expiry date\",\"webresource\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"has\",false],[\"Term\",\"expiry date\",\"webresource\"]],[\"RoleBinding\",[\"Term\",\"multipart upload\",\"webresource\"],0],[\"RoleBinding\",[\"Term\",\"expiry date\",\"webresource\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each multipart upload has exactly one expiry date\"]]]]],[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"is created by\",false],[\"Term\",\"actor\",\"webresource\"],[\"Attributes\",[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"multipart upload\",\"webresource\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"actor\",\"webresource\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"multipart upload\",\"webresource\"],[\"Verb\",\"is created by\",false],[\"Term\",\"actor\",\"webresource\"]],[\"RoleBinding\",[\"Term\",\"multipart upload\",\"webresource\"],0],[\"RoleBinding\",[\"Term\",\"actor\",\"webresource\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each multipart upload is created by at most one actor\"]]]]]]":{"tables":{"multipart upload":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"uuid","required":true,"references":{"resourceName":"uuid","fieldName":null},"index":"UNIQUE"},{"dataType":"Short Text","fieldName":"resource name","required":true,"references":{"resourceName":"resource name","fieldName":null}},{"dataType":"Short Text","fieldName":"field name","required":true,"references":{"resourceName":"field name","fieldName":null}},{"dataType":"Integer","fieldName":"resource id","required":true,"references":{"resourceName":"resource id","fieldName":null}},{"dataType":"Short Text","fieldName":"upload id","required":true,"references":{"resourceName":"upload id","fieldName":null}},{"dataType":"Short Text","fieldName":"file key","required":true,"references":{"resourceName":"file key","fieldName":null}},{"dataType":"Short Text","fieldName":"status","required":true,"references":{"resourceName":"status","fieldName":null},"checks":[["In",["Field","status"],["Text","pending"],["Text","completed"],["Text","cancelled"]]]},{"dataType":"Short Text","fieldName":"filename","required":true,"references":{"resourceName":"filename","fieldName":null}},{"dataType":"Short Text","fieldName":"content type","required":true,"references":{"resourceName":"content type","fieldName":null}},{"dataType":"Big Integer","fieldName":"size","required":true,"references":{"resourceName":"size","fieldName":null}},{"dataType":"Integer","fieldName":"chunk size","required":true,"references":{"resourceName":"chunk size","fieldName":null}},{"dataType":"Date Time","fieldName":"expiry date","required":true,"references":{"resourceName":"expiry date","fieldName":null}},{"dataType":"Integer","fieldName":"is created by-actor","required":false,"references":{"resourceName":"actor","fieldName":null}}],"primitive":false,"name":"multipart upload","indexes":[],"idField":"id","resourceName":"multipart upload","modelName":"multipart upload","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id"}},"functions":{"trigger_update_modified_at":{"type":"trigger","body":"NEW.\"modified at\" = NOW();\nRETURN NEW;","language":"plpgsql"}},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"actor":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"expiry date":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"uuid":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"resource name":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"field name":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"resource id":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"upload id":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"file key":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"status":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"content type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"size":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"chunk size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"valid until date":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"multipart upload":{"has":{"uuid":{"$":["uuid"]},"resource name":{"$":["resource name"]},"field name":{"$":["field name"]},"resource id":{"$":["resource id"]},"upload id":{"$":["upload id"]},"file key":{"$":["file key"]},"status":{"$":["status"]},"filename":{"$":["filename"]},"content type":{"$":["content type"]},"size":{"$":["size"]},"chunk size":{"$":["chunk size"]},"expiry date":{"$":["expiry date"]}},"multipart upload":{"has":{"uuid":{"$":["uuid"]},"resource name":{"$":["resource name"]},"field name":{"$":["field name"]},"resource id":{"$":["resource id"]},"upload id":{"$":["upload id"]},"file key":{"$":["file key"]},"status":{"$":["status"]},"filename":{"$":["filename"]},"content type":{"$":["content type"]},"size":{"$":["size"]},"chunk size":{"$":["chunk size"]},"expiry date":{"$":["expiry date"]}},"is created by":{"actor":{"$":["is created by-actor"]}}},"uuid":{"$":["uuid"]},"resource name":{"$":["resource name"]},"field name":{"$":["field name"]},"resource id":{"$":["resource id"]},"upload id":{"$":["upload id"]},"file key":{"$":["file key"]},"status":{"$":["status"]},"filename":{"$":["filename"]},"content type":{"$":["content type"]},"size":{"$":["size"]},"chunk size":{"$":["chunk size"]},"expiry date":{"$":["expiry date"]},"is created by":{"actor":{"$":["is created by-actor"]}}}},"rules":[],"synonyms":{},"lfInfo":{"rules":{}}},"[\"Model\",[\"Vocabulary\",\"Type\",[\"Attributes\"]],[\"Term\",\"Integer\",\"Type\",[\"Attributes\"]],[\"Term\",\"Real\",\"Type\",[\"Attributes\"]],[\"Term\",\"Text\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time Range\",\"Type\",[\"Attributes\"]],[\"Term\",\"Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Interval\",\"Type\",[\"Attributes\"]],[\"Term\",\"File\",\"Type\",[\"Attributes\"]],[\"Term\",\"Big Integer\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Integer'.\"]]],[\"Term\",\"Big Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Big Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Big Integer'.\"]]],[\"Term\",\"Case Insensitive Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that is compared case insensitively.\"]]],[\"Term\",\"JSON\",\"Type\",[\"Attributes\",[\"Note\",\"A 'Text' type that will only allow valid JSON.\"]]],[\"Term\",\"Hashed\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a hash.\"]]],[\"Term\",\"SHA\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a sha256 hash.\"]]],[\"Term\",\"Length\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Name\",\"Current Time\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Length\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Text\",\"Type\"]]],[\"Note\",\"Length in characters\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Text\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Length\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Text has exactly one Length\"]]]]],[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"],[\"Attributes\",[\"Note\",\"Casts the JSON to a text string\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"JSON\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Text\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"JSON\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each JSON is represented by exactly one Text\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"starts with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"ends with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"contains\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is contained in\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"Term\",\"Short Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]]]],[\"Term\",\"Red Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Green Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Blue Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Alpha Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Color\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Red Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Red Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Red Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Red Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Green Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Green Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Green Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Green Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Blue Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Blue Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Blue Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Blue Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Alpha Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Alpha Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Alpha Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Alpha Component\"]]]]],[\"Term\",\"Filename\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"HRef\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Type\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Disposition\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Size\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"WebResource\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"JSON\",\"Type\"]],[\"Note\",\"A 'JSON' type that will only allow valid JSON with an specific schema.\"]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Filename\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Filename\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Filename\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one Filename.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"HRef\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"HRef\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"HRef\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one HRef.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Type\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Type.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Disposition\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Disposition\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Disposition\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Disposition.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Size\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Size\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Size.\"]]]]],[\"Vocabulary\",\"Default\",[\"Attributes\"]],[\"Vocabulary\",\"example\",[\"Attributes\"]],[\"Term\",\"name\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"note\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]]]],[\"Term\",\"type\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"device\",\"example\",[\"Attributes\"]],[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"name\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"device\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"device\",\"example\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"name\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"example\"]],[\"RoleBinding\",[\"Term\",\"device\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"name\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each device has at most one name.\"]]]]],[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"note\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"note\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"device\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"device\",\"example\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"note\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"note\",\"example\"]],[\"RoleBinding\",[\"Term\",\"device\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"note\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each device has at most one note.\"]]]]],[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"type\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"type\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"device\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"device\",\"example\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"type\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"type\",\"example\"]],[\"RoleBinding\",[\"Term\",\"device\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"type\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each device has exactly one type.\"]]]]],[\"Term\",\"deviceb\",\"example\",[\"Attributes\"]],[\"FactType\",[\"Term\",\"deviceb\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"name\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"deviceb\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"deviceb\",\"example\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"name\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"deviceb\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"example\"]],[\"RoleBinding\",[\"Term\",\"deviceb\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"name\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each deviceb has at most one name.\"]]]]],[\"FactType\",[\"Term\",\"deviceb\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"note\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"note\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"deviceb\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"deviceb\",\"example\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"note\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"deviceb\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"note\",\"example\"]],[\"RoleBinding\",[\"Term\",\"deviceb\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"note\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each deviceb has at most one note.\"]]]]],[\"FactType\",[\"Term\",\"deviceb\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"type\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"type\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"deviceb\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"deviceb\",\"example\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"type\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"deviceb\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"type\",\"example\"]],[\"RoleBinding\",[\"Term\",\"deviceb\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"type\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each deviceb has exactly one type.\"]]]]]]":{"tables":{"device":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"name","required":false,"references":{"resourceName":"name","fieldName":null}},{"dataType":"Text","fieldName":"note","required":false,"references":{"resourceName":"note","fieldName":null}},{"dataType":"Short Text","fieldName":"type","required":true,"references":{"resourceName":"type","fieldName":null}}],"primitive":false,"name":"device","indexes":[],"idField":"id","resourceName":"device","modelName":"device","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id"},"deviceb":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"name","required":false,"references":{"resourceName":"name","fieldName":null}},{"dataType":"Text","fieldName":"note","required":false,"references":{"resourceName":"note","fieldName":null}},{"dataType":"Short Text","fieldName":"type","required":true,"references":{"resourceName":"type","fieldName":null}}],"primitive":false,"name":"deviceb","indexes":[],"idField":"id","resourceName":"deviceb","modelName":"deviceb","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id"}},"functions":{"trigger_update_modified_at":{"type":"trigger","body":"NEW.\"modified at\" = NOW();\nRETURN NEW;","language":"plpgsql"}},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"name":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"note":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"device":{"has":{"name":{"$":["name"]},"note":{"$":["note"]},"type":{"$":["type"]}},"device":{"has":{"name":{"$":["name"]},"note":{"$":["note"]},"type":{"$":["type"]}}},"name":{"$":["name"]},"note":{"$":["note"]},"type":{"$":["type"]}},"deviceb":{"has":{"name":{"$":["name"]},"note":{"$":["note"]},"type":{"$":["type"]}},"deviceb":{"has":{"name":{"$":["name"]},"note":{"$":["note"]},"type":{"$":["type"]}}},"name":{"$":["name"]},"note":{"$":["note"]},"type":{"$":["type"]}}},"rules":[],"synonyms":{},"lfInfo":{"rules":{}}},"[\"Model\",[\"Vocabulary\",\"Type\",[\"Attributes\"]],[\"Term\",\"Integer\",\"Type\",[\"Attributes\"]],[\"Term\",\"Real\",\"Type\",[\"Attributes\"]],[\"Term\",\"Text\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time Range\",\"Type\",[\"Attributes\"]],[\"Term\",\"Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Interval\",\"Type\",[\"Attributes\"]],[\"Term\",\"File\",\"Type\",[\"Attributes\"]],[\"Term\",\"Big Integer\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Integer'.\"]]],[\"Term\",\"Big Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Big Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Big Integer'.\"]]],[\"Term\",\"Case Insensitive Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that is compared case insensitively.\"]]],[\"Term\",\"JSON\",\"Type\",[\"Attributes\",[\"Note\",\"A 'Text' type that will only allow valid JSON.\"]]],[\"Term\",\"Hashed\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a hash.\"]]],[\"Term\",\"SHA\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a sha256 hash.\"]]],[\"Term\",\"Length\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Name\",\"Current Time\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Length\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Text\",\"Type\"]]],[\"Note\",\"Length in characters\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Text\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Length\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Text has exactly one Length\"]]]]],[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"],[\"Attributes\",[\"Note\",\"Casts the JSON to a text string\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"JSON\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Text\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"JSON\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each JSON is represented by exactly one Text\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"starts with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"ends with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"contains\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is contained in\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"Term\",\"Short Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]]]],[\"Term\",\"Red Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Green Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Blue Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Alpha Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Color\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Red Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Red Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Red Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Red Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Green Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Green Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Green Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Green Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Blue Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Blue Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Blue Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Blue Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Alpha Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Alpha Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Alpha Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Alpha Component\"]]]]],[\"Term\",\"Filename\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"HRef\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Type\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Disposition\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Size\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"WebResource\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"JSON\",\"Type\"]],[\"Note\",\"A 'JSON' type that will only allow valid JSON with an specific schema.\"]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Filename\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Filename\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Filename\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one Filename.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"HRef\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"HRef\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"HRef\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one HRef.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Type\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Type.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Disposition\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Disposition\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Disposition\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Disposition.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Size\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Size\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Size.\"]]]]],[\"Vocabulary\",\"Default\",[\"Attributes\"]],[\"Vocabulary\",\"example\",[\"Attributes\"]],[\"Term\",\"name\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"other image\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"WebResource\",\"Type\"]]]],[\"Term\",\"not translated webresource\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"WebResource\",\"Type\"]]]],[\"Term\",\"organization\",\"example\",[\"Attributes\"]],[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"name\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"organization\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"organization\",\"example\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"name\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"name\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each organization has exactly one name\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"organization\",\"example\"],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",1],[\"Term\",\"name\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"name\",\"example\"],1]]]],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",2],[\"Term\",\"name\",\"example\"],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",3],[\"Term\",\"Length\",\"Type\"],[\"Conjunction\",[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Length\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\",[\"Integer\",0]]],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Integer\",\"Type\",[\"Integer\",0]],[\"Integer\",0]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Length\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Integer\",5]]],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Integer\",\"Type\",[\"Integer\",5]],[\"Integer\",5]]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"name\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"name\",\"example\"],2],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],3]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"name\",\"example\"],2]]]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5\"]]]]],[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"not translated webresource\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"not translated webresource\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"organization\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"organization\",\"example\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"not translated webresource\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"not translated webresource\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"not translated webresource\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each organization has at most one not translated webresource\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"not translated webresource\",\"example\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"organization\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"not translated webresource\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"organization\",\"example\"]],[\"RoleBinding\",[\"Term\",\"not translated webresource\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each not translated webresource is of exactly one organization.\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"organization\",\"example\"],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",1],[\"Term\",\"not translated webresource\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"not translated webresource\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"not translated webresource\",\"example\"],1]]]],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",2],[\"Term\",\"not translated webresource\",\"example\"],[\"Conjunction\",[\"ExistentialQuantification\",[\"Variable\",[\"Number\",3],[\"Term\",\"Content Type\",\"Type\"],[\"Disjunction\",[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/png\"]]],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/png\"]],[\"Text\",\"image/png\"]]],[\"Disjunction\",[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpg\"]]],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpg\"]],[\"Text\",\"image/jpg\"]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpeg\"]]],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpeg\"]],[\"Text\",\"image/jpeg\"]]]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"not translated webresource\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"not translated webresource\",\"example\"],2],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3]]],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",4],[\"Term\",\"Size\",\"Type\"],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Size\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\",[\"Integer\",18874368]]],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],4],[\"RoleBinding\",[\"Term\",\"Integer\",\"Type\",[\"Integer\",18874368]],[\"Integer\",18874368]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"not translated webresource\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"not translated webresource\",\"example\"],2],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],4]]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"not translated webresource\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"not translated webresource\",\"example\"],2]]]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\"]]]]],[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"other image\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"other image\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"organization\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"organization\",\"example\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"other image\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"other image\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"other image\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each organization has at most one other image\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"other image\",\"example\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"organization\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"other image\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"organization\",\"example\"]],[\"RoleBinding\",[\"Term\",\"other image\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each other image is of exactly one organization.\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"organization\",\"example\"],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",1],[\"Term\",\"other image\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"other image\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"other image\",\"example\"],1]]]],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",2],[\"Term\",\"other image\",\"example\"],[\"Conjunction\",[\"ExistentialQuantification\",[\"Variable\",[\"Number\",3],[\"Term\",\"Content Type\",\"Type\"],[\"Disjunction\",[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/png\"]]],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/png\"]],[\"Text\",\"image/png\"]]],[\"Disjunction\",[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpg\"]]],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpg\"]],[\"Text\",\"image/jpg\"]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpeg\"]]],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpeg\"]],[\"Text\",\"image/jpeg\"]]]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"other image\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"other image\",\"example\"],2],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3]]],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",4],[\"Term\",\"Size\",\"Type\"],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Size\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\",[\"Integer\",18874368]]],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],4],[\"RoleBinding\",[\"Term\",\"Integer\",\"Type\",[\"Integer\",18874368]],[\"Integer\",18874368]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"other image\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"other image\",\"example\"],2],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],4]]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"other image\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"other image\",\"example\"],2]]]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a other image, has a other image that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\"]]]]]]":{"tables":{"organization":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"name","required":true,"references":{"resourceName":"name","fieldName":null}},{"dataType":"WebResource","fieldName":"not translated webresource","required":false,"references":{"resourceName":"not translated webresource","fieldName":null},"index":"UNIQUE"},{"dataType":"WebResource","fieldName":"other image","required":false,"references":{"resourceName":"other image","fieldName":null},"index":"UNIQUE"}],"primitive":false,"name":"organization","indexes":[],"idField":"id","resourceName":"organization","modelName":"organization","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id"}},"functions":{"trigger_update_modified_at":{"type":"trigger","body":"NEW.\"modified at\" = NOW();\nRETURN NEW;","language":"plpgsql"}},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"name":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"other image":{"WebResource":{"$":["WebResource"]},"has":{"WebResource":{"$":["WebResource"]}}},"not translated webresource":{"WebResource":{"$":["WebResource"]},"has":{"WebResource":{"$":["WebResource"]}}},"organization":{"has":{"name":{"$":["name"]},"not translated webresource":{"$":["not translated webresource"]},"other image":{"$":["other image"]}},"organization":{"has":{"name":{"$":["name"]},"not translated webresource":{"$":["not translated webresource"]},"other image":{"$":["other image"]}}},"name":{"$":["name"]},"not translated webresource":{"$":["not translated webresource"]},"other image":{"$":["other image"]}}},"rules":[["Rule",["Body",["Equals",["SelectQuery",["Select",[["Count","*"]]],["From",["Alias",["Table","organization"],"organization.0"]],["Where",["And",["Exists",["ReferencedField","organization.0","name"]],["Not",["And",["LessThan",["Integer",0],["CharacterLength",["ReferencedField","organization.0","name"]]],["LessThanOrEqual",["CharacterLength",["ReferencedField","organization.0","name"]],["Integer",5]],["Exists",["CharacterLength",["ReferencedField","organization.0","name"]]],["Exists",["ReferencedField","organization.0","name"]]]]]]],["Number",0]]],["StructuredEnglish","It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5"]],["Rule",["Body",["Equals",["SelectQuery",["Select",[["Count","*"]]],["From",["Alias",["Table","organization"],"organization.0"]],["Where",["And",["Exists",["ReferencedField","organization.0","not translated webresource"]],["Not",["And",["Or",["Equals",["Text","image/png"],["ExtractJSONPathAsText",["ReferencedField","organization.0","not translated webresource"],["TextArray",["EmbeddedText","content_type"]]]],["Equals",["Text","image/jpg"],["ExtractJSONPathAsText",["ReferencedField","organization.0","not translated webresource"],["TextArray",["EmbeddedText","content_type"]]]],["Equals",["Text","image/jpeg"],["ExtractJSONPathAsText",["ReferencedField","organization.0","not translated webresource"],["TextArray",["EmbeddedText","content_type"]]]]],["Exists",["ExtractJSONPathAsText",["ReferencedField","organization.0","not translated webresource"],["TextArray",["EmbeddedText","content_type"]]]],["LessThan",["Cast",["ExtractJSONPathAsText",["ReferencedField","organization.0","not translated webresource"],["TextArray",["EmbeddedText","size"]]],"Big Integer"],["Integer",18874368]],["Exists",["Cast",["ExtractJSONPathAsText",["ReferencedField","organization.0","not translated webresource"],["TextArray",["EmbeddedText","size"]]],"Big Integer"]],["Exists",["ReferencedField","organization.0","not translated webresource"]]]]]]],["Number",0]]],["StructuredEnglish","It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \"image/png\" or \"image/jpg\" or \"image/jpeg\" and has a Size (Type) that is less than 18874368."]],["Rule",["Body",["Equals",["SelectQuery",["Select",[["Count","*"]]],["From",["Alias",["Table","organization"],"organization.0"]],["Where",["And",["Exists",["ReferencedField","organization.0","other image"]],["Not",["And",["Or",["Equals",["Text","image/png"],["ExtractJSONPathAsText",["ReferencedField","organization.0","other image"],["TextArray",["EmbeddedText","content_type"]]]],["Equals",["Text","image/jpg"],["ExtractJSONPathAsText",["ReferencedField","organization.0","other image"],["TextArray",["EmbeddedText","content_type"]]]],["Equals",["Text","image/jpeg"],["ExtractJSONPathAsText",["ReferencedField","organization.0","other image"],["TextArray",["EmbeddedText","content_type"]]]]],["Exists",["ExtractJSONPathAsText",["ReferencedField","organization.0","other image"],["TextArray",["EmbeddedText","content_type"]]]],["LessThan",["Cast",["ExtractJSONPathAsText",["ReferencedField","organization.0","other image"],["TextArray",["EmbeddedText","size"]]],"Big Integer"],["Integer",18874368]],["Exists",["Cast",["ExtractJSONPathAsText",["ReferencedField","organization.0","other image"],["TextArray",["EmbeddedText","size"]]],"Big Integer"]],["Exists",["ReferencedField","organization.0","other image"]]]]]]],["Number",0]]],["StructuredEnglish","It is necessary that each organization that has a other image, has a other image that has a Content Type (Type) that is equal to \"image/png\" or \"image/jpg\" or \"image/jpeg\" and has a Size (Type) that is less than 18874368."]]],"synonyms":{},"lfInfo":{"rules":{"It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5":{"root":{"table":"organization","alias":"organization.0"}},"It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \"image/png\" or \"image/jpg\" or \"image/jpeg\" and has a Size (Type) that is less than 18874368.":{"root":{"table":"organization","alias":"organization.0"}},"It is necessary that each organization that has a other image, has a other image that has a Content Type (Type) that is equal to \"image/png\" or \"image/jpg\" or \"image/jpeg\" and has a Size (Type) that is less than 18874368.":{"root":{"table":"organization","alias":"organization.0"}}}}},"[\"Model\",[\"Vocabulary\",\"Type\",[\"Attributes\"]],[\"Term\",\"Integer\",\"Type\",[\"Attributes\"]],[\"Term\",\"Real\",\"Type\",[\"Attributes\"]],[\"Term\",\"Text\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time Range\",\"Type\",[\"Attributes\"]],[\"Term\",\"Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Interval\",\"Type\",[\"Attributes\"]],[\"Term\",\"File\",\"Type\",[\"Attributes\"]],[\"Term\",\"Big Integer\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Integer'.\"]]],[\"Term\",\"Big Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Big Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Big Integer'.\"]]],[\"Term\",\"Case Insensitive Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that is compared case insensitively.\"]]],[\"Term\",\"JSON\",\"Type\",[\"Attributes\",[\"Note\",\"A 'Text' type that will only allow valid JSON.\"]]],[\"Term\",\"Hashed\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a hash.\"]]],[\"Term\",\"SHA\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a sha256 hash.\"]]],[\"Term\",\"Length\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Name\",\"Current Time\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Length\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Text\",\"Type\"]]],[\"Note\",\"Length in characters\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Text\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Length\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Text has exactly one Length\"]]]]],[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"],[\"Attributes\",[\"Note\",\"Casts the JSON to a text string\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"JSON\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Text\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"JSON\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each JSON is represented by exactly one Text\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"starts with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"ends with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"contains\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is contained in\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"Term\",\"Short Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]]]],[\"Term\",\"Red Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Green Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Blue Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Alpha Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Color\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Red Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Red Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Red Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Red Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Green Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Green Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Green Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Green Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Blue Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Blue Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Blue Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Blue Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Alpha Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Alpha Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Alpha Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Alpha Component\"]]]]],[\"Term\",\"Filename\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"HRef\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Type\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Disposition\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Size\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"WebResource\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"JSON\",\"Type\"]],[\"Note\",\"A 'JSON' type that will only allow valid JSON with an specific schema.\"]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Filename\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Filename\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Filename\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one Filename.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"HRef\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"HRef\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"HRef\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one HRef.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Type\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Type.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Disposition\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Disposition\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Disposition\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Disposition.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Size\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Size\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Size.\"]]]]],[\"Vocabulary\",\"Default\",[\"Attributes\"]],[\"Vocabulary\",\"example\",[\"Attributes\"]],[\"Term\",\"name\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"logo image\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"WebResource\",\"Type\"]]]],[\"Term\",\"not translated webresource\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"WebResource\",\"Type\"]]]],[\"Term\",\"public artifacts\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"WebResource\",\"Type\"]]]],[\"Term\",\"private artifacts\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"WebResource\",\"Type\"]]]],[\"Term\",\"unrestricted artifact\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"WebResource\",\"Type\"]]]],[\"Term\",\"organization\",\"example\",[\"Attributes\"]],[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"name\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"organization\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"organization\",\"example\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"name\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"name\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each organization has exactly one name\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"organization\",\"example\"],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",1],[\"Term\",\"name\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"name\",\"example\"],1]]]],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",2],[\"Term\",\"name\",\"example\"],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",3],[\"Term\",\"Length\",\"Type\"],[\"Conjunction\",[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Length\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\",[\"Integer\",0]]],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Integer\",\"Type\",[\"Integer\",0]],[\"Integer\",0]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Length\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Integer\",5]]],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Integer\",\"Type\",[\"Integer\",5]],[\"Integer\",5]]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"name\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"name\",\"example\"],2],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],3]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"name\",\"example\"],2]]]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5\"]]]]],[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"not translated webresource\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"not translated webresource\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"organization\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"organization\",\"example\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"not translated webresource\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"not translated webresource\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"not translated webresource\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each organization has at most one not translated webresource\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"not translated webresource\",\"example\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"organization\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"not translated webresource\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"organization\",\"example\"]],[\"RoleBinding\",[\"Term\",\"not translated webresource\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each not translated webresource is of exactly one organization.\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"organization\",\"example\"],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",1],[\"Term\",\"not translated webresource\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"not translated webresource\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"not translated webresource\",\"example\"],1]]]],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",2],[\"Term\",\"not translated webresource\",\"example\"],[\"Conjunction\",[\"ExistentialQuantification\",[\"Variable\",[\"Number\",3],[\"Term\",\"Content Type\",\"Type\"],[\"Disjunction\",[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/png\"]]],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/png\"]],[\"Text\",\"image/png\"]]],[\"Disjunction\",[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpg\"]]],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpg\"]],[\"Text\",\"image/jpg\"]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpeg\"]]],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpeg\"]],[\"Text\",\"image/jpeg\"]]]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"not translated webresource\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"not translated webresource\",\"example\"],2],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3]]],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",4],[\"Term\",\"Size\",\"Type\"],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Size\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\",[\"Integer\",18874368]]],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],4],[\"RoleBinding\",[\"Term\",\"Integer\",\"Type\",[\"Integer\",18874368]],[\"Integer\",18874368]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"not translated webresource\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"not translated webresource\",\"example\"],2],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],4]]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"not translated webresource\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"not translated webresource\",\"example\"],2]]]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\"]]]]],[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"logo image\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"logo image\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"organization\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"organization\",\"example\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"logo image\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"logo image\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"logo image\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each organization has at most one logo image\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"logo image\",\"example\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"organization\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"logo image\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"organization\",\"example\"]],[\"RoleBinding\",[\"Term\",\"logo image\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each logo image is of exactly one organization.\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"organization\",\"example\"],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",1],[\"Term\",\"logo image\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"logo image\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"logo image\",\"example\"],1]]]],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",2],[\"Term\",\"logo image\",\"example\"],[\"Conjunction\",[\"ExistentialQuantification\",[\"Variable\",[\"Number\",3],[\"Term\",\"Content Type\",\"Type\"],[\"Disjunction\",[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/png\"]]],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/png\"]],[\"Text\",\"image/png\"]]],[\"Disjunction\",[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpg\"]]],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpg\"]],[\"Text\",\"image/jpg\"]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpeg\"]]],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\",[\"Text\",\"image/jpeg\"]],[\"Text\",\"image/jpeg\"]]]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"logo image\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"logo image\",\"example\"],2],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],3]]],[\"ExistentialQuantification\",[\"Variable\",[\"Number\",4],[\"Term\",\"Size\",\"Type\"],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Size\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\",[\"Integer\",18874368]]],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],4],[\"RoleBinding\",[\"Term\",\"Integer\",\"Type\",[\"Integer\",18874368]],[\"Integer\",18874368]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"logo image\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"logo image\",\"example\"],2],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],4]]]]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"logo image\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"logo image\",\"example\"],2]]]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a logo image, has a logo image that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\"]]]]],[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"releases\",false],[\"Term\",\"public artifacts\",\"example\"],[\"Attributes\"]],[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"private artifacts\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"private artifacts\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"organization\",\"example\"]]],[\"SynonymousForm\",[[\"Term\",\"private artifacts\",\"example\"],[\"Verb\",\"belongs to\",false],[\"Term\",\"organization\",\"example\"]]],[\"TermForm\",[\"Term\",\"organization private artifacts\",\"example\"]],[\"DatabaseTableName\",\"organization private artifacts\"]]],[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"unrestricted artifact\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"unrestricted artifact\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"organization\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"organization\",\"example\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"unrestricted artifact\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"organization\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"unrestricted artifact\",\"example\"]],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"unrestricted artifact\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each organization has at most one unrestricted artifact\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"unrestricted artifact\",\"example\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"organization\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"unrestricted artifact\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"organization\",\"example\"]],[\"RoleBinding\",[\"Term\",\"unrestricted artifact\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"organization\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each unrestricted artifact is of exactly one organization\"]]]]]]":{"tables":{"organization":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"name","required":true,"references":{"resourceName":"name","fieldName":null}},{"dataType":"WebResource","fieldName":"not translated webresource","required":false,"references":{"resourceName":"not translated webresource","fieldName":null},"index":"UNIQUE"},{"dataType":"WebResource","fieldName":"logo image","required":false,"references":{"resourceName":"logo image","fieldName":null},"index":"UNIQUE"},{"dataType":"WebResource","fieldName":"unrestricted artifact","required":false,"references":{"resourceName":"unrestricted artifact","fieldName":null},"index":"UNIQUE"}],"primitive":false,"name":"organization","indexes":[],"idField":"id","resourceName":"organization","modelName":"organization","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id"},"organization-releases-public artifacts":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"organization","required":true,"references":{"resourceName":"organization","fieldName":"id"}},{"dataType":"WebResource","fieldName":"releases-public artifacts","required":true},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"organization-releases-public artifacts","indexes":[{"type":"UNIQUE","fields":["organization","releases-public artifacts"]}],"idField":"id","resourceName":"organization-releases-public artifacts","modelName":"organization releases public artifacts","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}]},"organization-has-private artifacts":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"organization","required":true,"references":{"resourceName":"organization","fieldName":"id"}},{"dataType":"WebResource","fieldName":"private artifacts","required":true},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"organization private artifacts","indexes":[{"type":"UNIQUE","fields":["organization","private artifacts"]}],"idField":"id","resourceName":"organization-has-private artifacts","modelName":"organization has private artifacts","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}]}},"functions":{"trigger_update_modified_at":{"type":"trigger","body":"NEW.\"modified at\" = NOW();\nRETURN NEW;","language":"plpgsql"}},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"name":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"logo image":{"WebResource":{"$":["WebResource"]},"has":{"WebResource":{"$":["WebResource"]}}},"not translated webresource":{"WebResource":{"$":["WebResource"]},"has":{"WebResource":{"$":["WebResource"]}}},"public artifacts":{"WebResource":{"$":["WebResource"]},"has":{"WebResource":{"$":["WebResource"]}}},"private artifacts":{"WebResource":{"$":["WebResource"]},"has":{"WebResource":{"$":["WebResource"]}}},"unrestricted artifact":{"WebResource":{"$":["WebResource"]},"has":{"WebResource":{"$":["WebResource"]}}},"organization":{"has":{"name":{"$":["name"]},"not translated webresource":{"$":["not translated webresource"]},"logo image":{"$":["logo image"]},"private artifacts":{"$":["id",["organization-has-private artifacts","organization"]]},"organization":{"has":{"private artifacts":{"$":["id",["organization-has-private artifacts","organization"]]}}},"unrestricted artifact":{"$":["unrestricted artifact"]}},"organization":{"has":{"name":{"$":["name"]},"not translated webresource":{"$":["not translated webresource"]},"logo image":{"$":["logo image"]},"private artifacts":{"$":["id",["organization-has-private artifacts","organization"]]},"unrestricted artifact":{"$":["unrestricted artifact"]}},"releases":{"public artifacts":{"$":["id",["organization-releases-public artifacts","organization"]]}}},"name":{"$":["name"]},"not translated webresource":{"$":["not translated webresource"]},"logo image":{"$":["logo image"]},"releases":{"public artifacts":{"$":["id",["organization-releases-public artifacts","organization"]]}},"unrestricted artifact":{"$":["unrestricted artifact"]}},"organization-releases-public artifacts":{"organization":{"$":["organization",["organization","id"]]},"public artifacts":{"$":["releases-public artifacts"]},"releases":{"public artifacts":{"$":["releases-public artifacts"]}}},"organization-has-private artifacts":{"organization":{"$":["organization",["organization","id"]]},"private artifacts":{"$":["private artifacts"]},"has":{"private artifacts":{"$":["private artifacts"]}}}},"rules":[["Rule",["Body",["Equals",["SelectQuery",["Select",[["Count","*"]]],["From",["Alias",["Table","organization"],"organization.0"]],["Where",["And",["Exists",["ReferencedField","organization.0","name"]],["Not",["And",["LessThan",["Integer",0],["CharacterLength",["ReferencedField","organization.0","name"]]],["LessThanOrEqual",["CharacterLength",["ReferencedField","organization.0","name"]],["Integer",5]],["Exists",["CharacterLength",["ReferencedField","organization.0","name"]]],["Exists",["ReferencedField","organization.0","name"]]]]]]],["Number",0]]],["StructuredEnglish","It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5"]],["Rule",["Body",["Equals",["SelectQuery",["Select",[["Count","*"]]],["From",["Alias",["Table","organization"],"organization.0"]],["Where",["And",["Exists",["ReferencedField","organization.0","not translated webresource"]],["Not",["And",["Or",["Equals",["Text","image/png"],["ExtractJSONPathAsText",["ReferencedField","organization.0","not translated webresource"],["TextArray",["EmbeddedText","content_type"]]]],["Equals",["Text","image/jpg"],["ExtractJSONPathAsText",["ReferencedField","organization.0","not translated webresource"],["TextArray",["EmbeddedText","content_type"]]]],["Equals",["Text","image/jpeg"],["ExtractJSONPathAsText",["ReferencedField","organization.0","not translated webresource"],["TextArray",["EmbeddedText","content_type"]]]]],["Exists",["ExtractJSONPathAsText",["ReferencedField","organization.0","not translated webresource"],["TextArray",["EmbeddedText","content_type"]]]],["LessThan",["Cast",["ExtractJSONPathAsText",["ReferencedField","organization.0","not translated webresource"],["TextArray",["EmbeddedText","size"]]],"Big Integer"],["Integer",18874368]],["Exists",["Cast",["ExtractJSONPathAsText",["ReferencedField","organization.0","not translated webresource"],["TextArray",["EmbeddedText","size"]]],"Big Integer"]],["Exists",["ReferencedField","organization.0","not translated webresource"]]]]]]],["Number",0]]],["StructuredEnglish","It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \"image/png\" or \"image/jpg\" or \"image/jpeg\" and has a Size (Type) that is less than 18874368."]],["Rule",["Body",["Equals",["SelectQuery",["Select",[["Count","*"]]],["From",["Alias",["Table","organization"],"organization.0"]],["Where",["And",["Exists",["ReferencedField","organization.0","logo image"]],["Not",["And",["Or",["Equals",["Text","image/png"],["ExtractJSONPathAsText",["ReferencedField","organization.0","logo image"],["TextArray",["EmbeddedText","content_type"]]]],["Equals",["Text","image/jpg"],["ExtractJSONPathAsText",["ReferencedField","organization.0","logo image"],["TextArray",["EmbeddedText","content_type"]]]],["Equals",["Text","image/jpeg"],["ExtractJSONPathAsText",["ReferencedField","organization.0","logo image"],["TextArray",["EmbeddedText","content_type"]]]]],["Exists",["ExtractJSONPathAsText",["ReferencedField","organization.0","logo image"],["TextArray",["EmbeddedText","content_type"]]]],["LessThan",["Cast",["ExtractJSONPathAsText",["ReferencedField","organization.0","logo image"],["TextArray",["EmbeddedText","size"]]],"Big Integer"],["Integer",18874368]],["Exists",["Cast",["ExtractJSONPathAsText",["ReferencedField","organization.0","logo image"],["TextArray",["EmbeddedText","size"]]],"Big Integer"]],["Exists",["ReferencedField","organization.0","logo image"]]]]]]],["Number",0]]],["StructuredEnglish","It is necessary that each organization that has a logo image, has a logo image that has a Content Type (Type) that is equal to \"image/png\" or \"image/jpg\" or \"image/jpeg\" and has a Size (Type) that is less than 18874368."]]],"synonyms":{"organization private artifacts":"organization-has-private artifacts"},"lfInfo":{"rules":{"It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5":{"root":{"table":"organization","alias":"organization.0"}},"It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \"image/png\" or \"image/jpg\" or \"image/jpeg\" and has a Size (Type) that is less than 18874368.":{"root":{"table":"organization","alias":"organization.0"}},"It is necessary that each organization that has a logo image, has a logo image that has a Content Type (Type) that is equal to \"image/png\" or \"image/jpg\" or \"image/jpeg\" and has a Size (Type) that is less than 18874368.":{"root":{"table":"organization","alias":"organization.0"}}}}},"[\"Model\",[\"Vocabulary\",\"Type\",[\"Attributes\"]],[\"Term\",\"Integer\",\"Type\",[\"Attributes\"]],[\"Term\",\"Real\",\"Type\",[\"Attributes\"]],[\"Term\",\"Text\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Date Time Range\",\"Type\",[\"Attributes\"]],[\"Term\",\"Time\",\"Type\",[\"Attributes\"]],[\"Term\",\"Interval\",\"Type\",[\"Attributes\"]],[\"Term\",\"File\",\"Type\",[\"Attributes\"]],[\"Term\",\"Big Integer\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Integer'.\"]]],[\"Term\",\"Big Serial\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Big Integer\",\"Type\"]],[\"Note\",\"An auto-incrementing 'Big Integer'.\"]]],[\"Term\",\"Case Insensitive Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that is compared case insensitively.\"]]],[\"Term\",\"JSON\",\"Type\",[\"Attributes\",[\"Note\",\"A 'Text' type that will only allow valid JSON.\"]]],[\"Term\",\"Hashed\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a hash.\"]]],[\"Term\",\"SHA\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]],[\"Note\",\"A 'Text' type that will automatically be converted to a sha256 hash.\"]]],[\"Term\",\"Length\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Name\",\"Current Time\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Length\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Text\",\"Type\"]]],[\"Note\",\"Length in characters\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Text\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Length\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Text\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Length\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Length\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Text has exactly one Length\"]]]]],[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"],[\"Attributes\",[\"Note\",\"Casts the JSON to a text string\"],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"JSON\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Text\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"JSON\",\"Type\"],[\"Verb\",\"is represented by\",false],[\"Term\",\"Text\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"JSON\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Text\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each JSON is represented by exactly one Text\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is before\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is after\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Date Time\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Date Time\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Integer\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is less than or equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is greater than or equal to\",false],[\"Term\",\"Integer\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Real\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"is equal to\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Real\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Integer\",\"Type\"]]],[\"SynonymousForm\",[[\"Term\",\"Integer\",\"Type\"],[\"Verb\",\"equals\",false],[\"Term\",\"Real\",\"Type\"]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]]]],[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"equals\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is case insensitively equal to\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"starts with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"ends with\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\"]],[\"FactType\",[\"Term\",\"Text\",\"Type\",[\"Number\",1]],[\"Verb\",\"contains\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Text\",\"Type\",[\"Number\",2]],[\"Verb\",\"is contained in\",false],[\"Term\",\"Text\",\"Type\",[\"Number\",1]]]]]],[\"Term\",\"Short Text\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]]]],[\"Term\",\"Red Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Green Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Blue Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Alpha Component\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"Color\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Red Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Red Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Red Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Red Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Red Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Green Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Green Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Green Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Green Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Green Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Blue Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Blue Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Blue Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Blue Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Blue Component\"]]]]],[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Alpha Component\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"Color\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"Color\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Alpha Component\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"Color\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Alpha Component\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"Color\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Alpha Component\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each Color has exactly one Alpha Component\"]]]]],[\"Term\",\"Filename\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"HRef\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Type\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Content Disposition\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"Size\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"WebResource\",\"Type\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"JSON\",\"Type\"]],[\"Note\",\"A 'JSON' type that will only allow valid JSON with an specific schema.\"]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Filename\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Filename\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Filename\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Filename\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one Filename.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"HRef\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"HRef\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"HRef\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"HRef\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has exactly one HRef.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Type\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Type\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Type\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Type\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Type.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Content Disposition\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Content Disposition\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Content Disposition\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Content Disposition\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Content Disposition.\"]]]]],[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"Size\",\"Type\"],[\"Verb\",\"is of\",false],[\"Term\",\"WebResource\",\"Type\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"WebResource\",\"Type\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"Size\",\"Type\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"WebResource\",\"Type\"],[\"Verb\",\"has\",false],[\"Term\",\"Size\",\"Type\"]],[\"RoleBinding\",[\"Term\",\"WebResource\",\"Type\"],0],[\"RoleBinding\",[\"Term\",\"Size\",\"Type\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that Each WebResource has at most one Size.\"]]]]],[\"Vocabulary\",\"Default\",[\"Attributes\"]],[\"Vocabulary\",\"example\",[\"Attributes\"]],[\"Term\",\"name\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"note\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Text\",\"Type\"]]]],[\"Term\",\"last heartbeat\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Date Time\",\"Type\"]]]],[\"Term\",\"type\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Short Text\",\"Type\"]]]],[\"Term\",\"count\",\"example\",[\"Attributes\",[\"ConceptType\",[\"Term\",\"Integer\",\"Type\"]]]],[\"Term\",\"device\",\"example\",[\"Attributes\"]],[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"name\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"device\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"device\",\"example\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"name\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"name\",\"example\"]],[\"RoleBinding\",[\"Term\",\"device\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"name\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each device has at most one name.\"]]]]],[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"note\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"note\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"device\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"device\",\"example\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"note\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"note\",\"example\"]],[\"RoleBinding\",[\"Term\",\"device\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"note\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each device has at most one note.\"]]]]],[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"note\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"note\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"device\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"device\",\"example\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"note\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"note\",\"example\"]],[\"RoleBinding\",[\"Term\",\"device\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"note\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each device has at most one note.\"]]]]],[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"last heartbeat\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"last heartbeat\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"device\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"device\",\"example\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"last heartbeat\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"last heartbeat\",\"example\"]],[\"RoleBinding\",[\"Term\",\"device\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"last heartbeat\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each device has at most one last heartbeat.\"]]]]],[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"type\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"type\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"device\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"device\",\"example\"]],[\"ExactQuantification\",[\"Cardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"type\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"type\",\"example\"]],[\"RoleBinding\",[\"Term\",\"device\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"type\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each device has exactly one type.\"]]]]],[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"count\",\"example\"],[\"Attributes\",[\"SynonymousForm\",[[\"Term\",\"count\",\"example\"],[\"Verb\",\"is of\",false],[\"Term\",\"device\",\"example\"]]],[\"Necessity\",[\"Rule\",[\"NecessityFormulation\",[\"UniversalQuantification\",[\"Variable\",[\"Number\",0],[\"Term\",\"device\",\"example\"]],[\"AtMostNQuantification\",[\"MaximumCardinality\",[\"Number\",1]],[\"Variable\",[\"Number\",1],[\"Term\",\"count\",\"example\"]],[\"AtomicFormulation\",[\"FactType\",[\"Term\",\"device\",\"example\"],[\"Verb\",\"has\",false],[\"Term\",\"count\",\"example\"]],[\"RoleBinding\",[\"Term\",\"device\",\"example\"],0],[\"RoleBinding\",[\"Term\",\"count\",\"example\"],1]]]]],[\"StructuredEnglish\",\"It is necessary that each device has at most one count.\"]]]]]]":{"tables":{"device":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"name","required":false,"references":{"resourceName":"name","fieldName":null}},{"dataType":"Text","fieldName":"note","required":false,"references":{"resourceName":"note","fieldName":null}},{"dataType":"Date Time","fieldName":"last heartbeat","required":false,"references":{"resourceName":"last heartbeat","fieldName":null}},{"dataType":"Short Text","fieldName":"type","required":true,"references":{"resourceName":"type","fieldName":null}},{"dataType":"Integer","fieldName":"count","required":false,"references":{"resourceName":"count","fieldName":null}}],"primitive":false,"name":"device","indexes":[],"idField":"id","resourceName":"device","modelName":"device","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id"}},"functions":{"trigger_update_modified_at":{"type":"trigger","body":"NEW.\"modified at\" = NOW();\nRETURN NEW;","language":"plpgsql"}},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"name":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"note":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"last heartbeat":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"count":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"device":{"has":{"name":{"$":["name"]},"note":{"$":["note"]},"last heartbeat":{"$":["last heartbeat"]},"type":{"$":["type"]},"count":{"$":["count"]}},"device":{"has":{"name":{"$":["name"]},"note":{"$":["note"]},"last heartbeat":{"$":["last heartbeat"]},"type":{"$":["type"]},"count":{"$":["count"]}}},"name":{"$":["name"]},"note":{"$":["note"]},"last heartbeat":{"$":["last heartbeat"]},"type":{"$":["type"]},"count":{"$":["count"]}}},"rules":[],"synonyms":{},"lfInfo":{"rules":{}}}}},"metadata":{"24.0.4":{"{\"vocab\":\"dev\",\"abstractSqlModel\":{\"tables\":{\"model\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"is of-vocabulary\",\"required\":true,\"references\":{\"resourceName\":\"vocabulary\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"model type\",\"required\":true,\"references\":{\"resourceName\":\"model type\",\"fieldName\":null}},{\"dataType\":\"JSON\",\"fieldName\":\"model value\",\"required\":true,\"references\":{\"resourceName\":\"model value\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"model\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"model\",\"modelName\":\"model\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"model value\"}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"model value\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"vocabulary\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"model type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"model\":{\"is of\":{\"vocabulary\":{\"$\":[\"is of-vocabulary\"]}},\"model\":{\"is of\":{\"vocabulary\":{\"$\":[\"is of-vocabulary\"]}},\"has\":{\"model type\":{\"$\":[\"model type\"]},\"model value\":{\"$\":[\"model value\"]}}},\"has\":{\"model type\":{\"$\":[\"model type\"]},\"model value\":{\"$\":[\"model value\"]}},\"model type\":{\"$\":[\"model type\"]},\"model value\":{\"$\":[\"model value\"]}}},\"rules\":[],\"synonyms\":{},\"lfInfo\":{\"rules\":{}}}}":"\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\n\n\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t","{\"vocab\":\"Auth\",\"abstractSqlModel\":{\"tables\":{\"permission\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Text\",\"fieldName\":\"name\",\"required\":true,\"references\":{\"resourceName\":\"name\",\"fieldName\":null},\"index\":\"UNIQUE\"}],\"primitive\":false,\"name\":\"permission\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"permission\",\"modelName\":\"permission\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"name\"},\"role\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Text\",\"fieldName\":\"name\",\"required\":true,\"references\":{\"resourceName\":\"name\",\"fieldName\":null},\"index\":\"UNIQUE\"}],\"primitive\":false,\"name\":\"role\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"role\",\"modelName\":\"role\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"name\"},\"role-has-permission\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"role\",\"required\":true,\"references\":{\"resourceName\":\"role\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"permission\",\"required\":true,\"references\":{\"resourceName\":\"permission\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"role-has-permission\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"role\",\"permission\"]}],\"idField\":\"id\",\"resourceName\":\"role-has-permission\",\"modelName\":\"role has permission\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"actor\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"actor\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"actor\",\"modelName\":\"actor\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"},\"user\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"ConceptType\",\"fieldName\":\"actor\",\"required\":true,\"references\":{\"resourceName\":\"actor\",\"fieldName\":\"id\"}},{\"dataType\":\"Short Text\",\"fieldName\":\"username\",\"required\":true,\"references\":{\"resourceName\":\"username\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"Hashed\",\"fieldName\":\"password\",\"required\":true,\"references\":{\"resourceName\":\"password\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"user\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"user\",\"modelName\":\"user\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"username\"},\"user-has-role\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"user\",\"required\":true,\"references\":{\"resourceName\":\"user\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"role\",\"required\":true,\"references\":{\"resourceName\":\"role\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Date Time\",\"fieldName\":\"expiry date\",\"required\":false,\"references\":{\"resourceName\":\"expiry date\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"user-has-role\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"user\",\"role\"]}],\"idField\":\"id\",\"resourceName\":\"user-has-role\",\"modelName\":\"user has role\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"user-has-permission\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"user\",\"required\":true,\"references\":{\"resourceName\":\"user\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"permission\",\"required\":true,\"references\":{\"resourceName\":\"permission\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Date Time\",\"fieldName\":\"expiry date\",\"required\":false,\"references\":{\"resourceName\":\"expiry date\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"user-has-permission\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"user\",\"permission\"]}],\"idField\":\"id\",\"resourceName\":\"user-has-permission\",\"modelName\":\"user has permission\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"api key\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"key\",\"required\":true,\"references\":{\"resourceName\":\"key\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"Date Time\",\"fieldName\":\"expiry date\",\"required\":false,\"references\":{\"resourceName\":\"expiry date\",\"fieldName\":null}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"is of-actor\",\"required\":true,\"references\":{\"resourceName\":\"actor\",\"fieldName\":\"id\"}},{\"dataType\":\"Text\",\"fieldName\":\"name\",\"required\":false,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"Text\",\"fieldName\":\"description\",\"required\":false,\"references\":{\"resourceName\":\"description\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"api key\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"api key\",\"modelName\":\"api key\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"key\"},\"api key-has-role\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"api key\",\"required\":true,\"references\":{\"resourceName\":\"api key\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"role\",\"required\":true,\"references\":{\"resourceName\":\"role\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"api key-has-role\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"api key\",\"role\"]}],\"idField\":\"id\",\"resourceName\":\"api key-has-role\",\"modelName\":\"api key has role\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"api key-has-permission\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"api key\",\"required\":true,\"references\":{\"resourceName\":\"api key\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"permission\",\"required\":true,\"references\":{\"resourceName\":\"permission\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"api key-has-permission\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"api key\",\"permission\"]}],\"idField\":\"id\",\"resourceName\":\"api key-has-permission\",\"modelName\":\"api key has permission\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"username\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"password\":{\"Hashed\":{\"$\":[\"Hashed\"]},\"has\":{\"Hashed\":{\"$\":[\"Hashed\"]}}},\"name\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"key\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"expiry date\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"description\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"permission\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"user\":{\"has\":{\"permission\":{\"$\":[\"id\",[\"user-has-permission\",\"permission\"]]}}}},\"permission\":{\"has\":{\"name\":{\"$\":[\"name\"]}}},\"name\":{\"$\":[\"name\"]},\"is of\":{\"role\":{\"$\":[\"id\",[\"role-has-permission\",\"permission\"]]},\"user\":{\"$\":[\"id\",[\"user-has-permission\",\"permission\"]]},\"api key\":{\"$\":[\"id\",[\"api key-has-permission\",\"permission\"]]}},\"user\":{\"has\":{\"permission\":{\"$\":[\"id\",[\"user-has-permission\",\"permission\"]]}}}},\"role\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"permission\":{\"$\":[\"id\",[\"role-has-permission\",\"role\"]]},\"user\":{\"has\":{\"role\":{\"$\":[\"id\",[\"user-has-role\",\"role\"]]}}}},\"role\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"permission\":{\"$\":[\"id\",[\"role-has-permission\",\"role\"]]}}},\"name\":{\"$\":[\"name\"]},\"user\":{\"has\":{\"role\":{\"$\":[\"id\",[\"user-has-role\",\"role\"]]}}},\"is of\":{\"user\":{\"$\":[\"id\",[\"user-has-role\",\"role\"]]},\"api key\":{\"$\":[\"id\",[\"api key-has-role\",\"role\"]]}}},\"role-has-permission\":{\"role\":{\"$\":[\"role\",[\"role\",\"id\"]]},\"permission\":{\"$\":[\"permission\",[\"permission\",\"id\"]]},\"has\":{\"permission\":{\"$\":[\"permission\",[\"permission\",\"id\"]]}},\"is of\":{\"role\":{\"$\":[\"role\",[\"role\",\"id\"]]}}},\"actor\":{\"is of\":{\"user\":{\"$\":[\"id\",[\"user\",\"actor\"]]}},\"api key\":{\"$\":[\"id\",[\"api key\",\"is of-actor\"]]},\"has\":{\"api key\":{\"$\":[\"id\",[\"api key\",\"is of-actor\"]]}}},\"user\":{\"actor\":{\"$\":[\"actor\",[\"actor\",\"id\"]]},\"has\":{\"actor\":{\"$\":[\"actor\",[\"actor\",\"id\"]]},\"username\":{\"$\":[\"username\"]},\"password\":{\"$\":[\"password\"]},\"role\":{\"$\":[\"id\",[\"user-has-role\",\"user\"]]},\"user\":{\"has\":{\"role\":{\"$\":[\"id\",[\"user-has-role\",\"user\"]]},\"permission\":{\"$\":[\"id\",[\"user-has-permission\",\"user\"]]}}},\"permission\":{\"$\":[\"id\",[\"user-has-permission\",\"user\"]]}},\"user\":{\"has\":{\"username\":{\"$\":[\"username\"]},\"password\":{\"$\":[\"password\"]},\"role\":{\"$\":[\"id\",[\"user-has-role\",\"user\"]]},\"permission\":{\"$\":[\"id\",[\"user-has-permission\",\"user\"]]}}},\"username\":{\"$\":[\"username\"]},\"password\":{\"$\":[\"password\"]}},\"user-has-role\":{\"user\":{\"$\":[\"user\",[\"user\",\"id\"]],\"has\":{\"role\":{\"has\":{\"expiry date\":{\"$\":[\"expiry date\"]}}}}},\"role\":{\"$\":[\"role\",[\"role\",\"id\"]]},\"has\":{\"role\":{\"$\":[\"role\",[\"role\",\"id\"]]},\"expiry date\":{\"$\":[\"expiry date\"]}},\"is of\":{\"user\":{\"$\":[\"user\",[\"user\",\"id\"]]}},\"expiry date\":{\"$\":[\"expiry date\"]}},\"user-has-permission\":{\"user\":{\"$\":[\"user\",[\"user\",\"id\"]],\"has\":{\"permission\":{\"has\":{\"expiry date\":{\"$\":[\"expiry date\"]}}}}},\"permission\":{\"$\":[\"permission\",[\"permission\",\"id\"]]},\"has\":{\"permission\":{\"$\":[\"permission\",[\"permission\",\"id\"]]},\"expiry date\":{\"$\":[\"expiry date\"]}},\"is of\":{\"user\":{\"$\":[\"user\",[\"user\",\"id\"]]}},\"expiry date\":{\"$\":[\"expiry date\"]}},\"api key\":{\"has\":{\"key\":{\"$\":[\"key\"]},\"expiry date\":{\"$\":[\"expiry date\"]},\"role\":{\"$\":[\"id\",[\"api key-has-role\",\"api key\"]]},\"permission\":{\"$\":[\"id\",[\"api key-has-permission\",\"api key\"]]},\"name\":{\"$\":[\"name\"]},\"description\":{\"$\":[\"description\"]}},\"api key\":{\"has\":{\"key\":{\"$\":[\"key\"]},\"expiry date\":{\"$\":[\"expiry date\"]},\"role\":{\"$\":[\"id\",[\"api key-has-role\",\"api key\"]]},\"permission\":{\"$\":[\"id\",[\"api key-has-permission\",\"api key\"]]},\"name\":{\"$\":[\"name\"]},\"description\":{\"$\":[\"description\"]}},\"is of\":{\"actor\":{\"$\":[\"id\",[\"api key-is of-actor\",\"api key\"]]}}},\"key\":{\"$\":[\"key\"]},\"expiry date\":{\"$\":[\"expiry date\"]},\"is of\":{\"actor\":{\"$\":[\"is of-actor\",[\"actor\",\"id\"]]}},\"name\":{\"$\":[\"name\"]},\"description\":{\"$\":[\"description\"]}},\"api key-has-role\":{\"api key\":{\"$\":[\"api key\",[\"api key\",\"id\"]]},\"role\":{\"$\":[\"role\",[\"role\",\"id\"]]},\"has\":{\"role\":{\"$\":[\"role\",[\"role\",\"id\"]]}},\"is of\":{\"api key\":{\"$\":[\"api key\",[\"api key\",\"id\"]]}}},\"api key-has-permission\":{\"api key\":{\"$\":[\"api key\",[\"api key\",\"id\"]]},\"permission\":{\"$\":[\"permission\",[\"permission\",\"id\"]]},\"has\":{\"permission\":{\"$\":[\"permission\",[\"permission\",\"id\"]]}},\"is of\":{\"api key\":{\"$\":[\"api key\",[\"api key\",\"id\"]]}}}},\"rules\":[],\"synonyms\":{\"user role\":\"user-has-role\",\"user permission\":\"user-has-permission\"},\"lfInfo\":{\"rules\":{}}}}":"\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\t\t\t\t\t\n\t\n\t\n\n\n\t\n\t\n\n\n\t\n\t\n\n\n\t\n\t\n\n\n\t\n\t\n\n\n\t\n\t\n\n\n\t\n\t\n\n\n\t\n\t\n\n\n\t\n\t\n\n\n\t\n\t\n\n\n\t\n\t\n\n\t\t\t\t\t\n\n\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\t\n\t\n\t\t\t\t\t\t\t\t\n\n\t\n\t\n\t\t\t\t\t\t\t\t\n\n\t\n\t\n\t\t\t\t\t\t\t\t\n\n\t\n\t\n\t\t\t\t\t\t\t\t\n\n\t\n\t\n\t\t\t\t\t\t\t\t\n\n\t\n\t\n\t\t\t\t\t\t\t\t\n\n\t\n\t\n\t\t\t\t\t\t\t\t\n\n\t\n\t\n\t\t\t\t\t\t\t\t\n\n\t\n\t\n\t\t\t\t\t\t\t\t\n\n\t\n\t\n\t\t\t\t\t\t\t\t\n\n\t\n\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t","{\"vocab\":\"migrations\",\"abstractSqlModel\":{\"tables\":{\"migration\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Short Text\",\"fieldName\":\"model name\",\"required\":true,\"references\":{\"resourceName\":\"model name\",\"fieldName\":null},\"index\":\"PRIMARY KEY\"},{\"dataType\":\"JSON\",\"fieldName\":\"executed migrations\",\"required\":true,\"references\":{\"resourceName\":\"executed migrations\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"migration\",\"indexes\":[],\"idField\":\"model name\",\"resourceName\":\"migration\",\"modelName\":\"migration\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"model name\"},\"migration lock\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Short Text\",\"fieldName\":\"model name\",\"required\":true,\"references\":{\"resourceName\":\"model name\",\"fieldName\":null},\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"migration lock\",\"indexes\":[],\"idField\":\"model name\",\"resourceName\":\"migration lock\",\"modelName\":\"migration lock\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"model name\"},\"migration status\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Short Text\",\"fieldName\":\"migration key\",\"required\":true,\"references\":{\"resourceName\":\"migration key\",\"fieldName\":null},\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Date Time\",\"fieldName\":\"start time\",\"required\":false,\"references\":{\"resourceName\":\"start time\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"last run time\",\"required\":false,\"references\":{\"resourceName\":\"last run time\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"run count\",\"required\":true,\"references\":{\"resourceName\":\"run count\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"migrated row count\",\"required\":false,\"references\":{\"resourceName\":\"migrated row count\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"error count\",\"required\":false,\"references\":{\"resourceName\":\"error count\",\"fieldName\":null}},{\"dataType\":\"Boolean\",\"fieldName\":\"is backing off\",\"required\":true},{\"dataType\":\"Date Time\",\"fieldName\":\"converged time\",\"required\":false,\"references\":{\"resourceName\":\"converged time\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"migration status\",\"indexes\":[],\"idField\":\"migration key\",\"resourceName\":\"migration status\",\"modelName\":\"migration status\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"migration key\"}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"model name\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"executed migrations\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"lock time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"migration\":{\"has\":{\"model name\":{\"$\":[\"model name\"]},\"executed migrations\":{\"$\":[\"executed migrations\"]}},\"migration\":{\"has\":{\"model name\":{\"$\":[\"model name\"]},\"executed migrations\":{\"$\":[\"executed migrations\"]}}},\"model name\":{\"$\":[\"model name\"]},\"executed migrations\":{\"$\":[\"executed migrations\"]}},\"migration lock\":{\"has\":{\"model name\":{\"$\":[\"model name\"]}},\"migration lock\":{\"has\":{\"model name\":{\"$\":[\"model name\"]}}},\"model name\":{\"$\":[\"model name\"]}},\"migration key\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"start time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"last run time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"run count\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"migrated row count\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"error count\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"converged time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"migration status\":{\"has\":{\"migration key\":{\"$\":[\"migration key\"]},\"start time\":{\"$\":[\"start time\"]},\"last run time\":{\"$\":[\"last run time\"]},\"run count\":{\"$\":[\"run count\"]},\"migrated row count\":{\"$\":[\"migrated row count\"]},\"error count\":{\"$\":[\"error count\"]},\"converged time\":{\"$\":[\"converged time\"]}},\"migration status\":{\"has\":{\"migration key\":{\"$\":[\"migration key\"]},\"start time\":{\"$\":[\"start time\"]},\"last run time\":{\"$\":[\"last run time\"]},\"run count\":{\"$\":[\"run count\"]},\"migrated row count\":{\"$\":[\"migrated row count\"]},\"error count\":{\"$\":[\"error count\"]},\"converged time\":{\"$\":[\"converged time\"]}}},\"migration key\":{\"$\":[\"migration key\"]},\"start time\":{\"$\":[\"start time\"]},\"last run time\":{\"$\":[\"last run time\"]},\"run count\":{\"$\":[\"run count\"]},\"migrated row count\":{\"$\":[\"migrated row count\"]},\"error count\":{\"$\":[\"error count\"]},\"is backing off\":{\"$\":[\"is backing off\"]},\"converged time\":{\"$\":[\"converged time\"]}}},\"rules\":[],\"synonyms\":{},\"lfInfo\":{\"rules\":{}}}}":"\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\n\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\n\n\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t","{\"vocab\":\"tasks\",\"abstractSqlModel\":{\"tables\":{\"task\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Big Serial\",\"fieldName\":\"id\",\"required\":true,\"references\":{\"resourceName\":\"id\",\"fieldName\":null},\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"key\",\"required\":false,\"references\":{\"resourceName\":\"key\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"is created by-actor\",\"required\":true,\"references\":{\"resourceName\":\"actor\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"is executed by-handler\",\"required\":true,\"references\":{\"resourceName\":\"handler\",\"fieldName\":null}},{\"dataType\":\"JSON\",\"fieldName\":\"is executed with-parameter set\",\"required\":false,\"references\":{\"resourceName\":\"parameter set\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"is scheduled with-cron expression\",\"required\":false,\"references\":{\"resourceName\":\"cron expression\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"is scheduled to execute on-time\",\"required\":false,\"references\":{\"resourceName\":\"time\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"status\",\"required\":true,\"references\":{\"resourceName\":\"status\",\"fieldName\":null},\"checks\":[[\"In\",[\"Field\",\"status\"],[\"Text\",\"queued\"],[\"Text\",\"cancelled\"],[\"Text\",\"succeeded\"],[\"Text\",\"failed\"]]]},{\"dataType\":\"Date Time\",\"fieldName\":\"started on-time\",\"required\":false,\"references\":{\"resourceName\":\"time\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"ended on-time\",\"required\":false,\"references\":{\"resourceName\":\"time\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"error message\",\"required\":false,\"references\":{\"resourceName\":\"error message\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"attempt count\",\"required\":true,\"references\":{\"resourceName\":\"attempt count\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"attempt limit\",\"required\":true,\"references\":{\"resourceName\":\"attempt limit\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"task\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"task\",\"modelName\":\"task\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"id\":{\"Big Serial\":{\"$\":[\"Big Serial\"]},\"has\":{\"Big Serial\":{\"$\":[\"Big Serial\"]}}},\"actor\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"attempt count\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"attempt limit\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"cron expression\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"error message\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"handler\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"key\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"parameter set\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"status\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"task\":{\"has\":{\"id\":{\"$\":[\"id\"]},\"key\":{\"$\":[\"key\"]},\"status\":{\"$\":[\"status\"]},\"error message\":{\"$\":[\"error message\"]},\"attempt count\":{\"$\":[\"attempt count\"]},\"attempt limit\":{\"$\":[\"attempt limit\"]}},\"task\":{\"has\":{\"id\":{\"$\":[\"id\"]},\"key\":{\"$\":[\"key\"]},\"status\":{\"$\":[\"status\"]},\"error message\":{\"$\":[\"error message\"]},\"attempt count\":{\"$\":[\"attempt count\"]},\"attempt limit\":{\"$\":[\"attempt limit\"]}},\"is created by\":{\"actor\":{\"$\":[\"is created by-actor\"]}},\"is executed by\":{\"handler\":{\"$\":[\"is executed by-handler\"]}},\"is executed with\":{\"parameter set\":{\"$\":[\"is executed with-parameter set\"]}},\"is scheduled with\":{\"cron expression\":{\"$\":[\"is scheduled with-cron expression\"]}},\"is scheduled to execute on\":{\"time\":{\"$\":[\"is scheduled to execute on-time\"]}},\"started on\":{\"time\":{\"$\":[\"started on-time\"]}},\"ended on\":{\"time\":{\"$\":[\"ended on-time\"]}}},\"id\":{\"$\":[\"id\"]},\"key\":{\"$\":[\"key\"]},\"is created by\":{\"actor\":{\"$\":[\"is created by-actor\"]}},\"is executed by\":{\"handler\":{\"$\":[\"is executed by-handler\"]}},\"is executed with\":{\"parameter set\":{\"$\":[\"is executed with-parameter set\"]}},\"is scheduled with\":{\"cron expression\":{\"$\":[\"is scheduled with-cron expression\"]}},\"is scheduled to execute on\":{\"time\":{\"$\":[\"is scheduled to execute on-time\"]}},\"status\":{\"$\":[\"status\"]},\"started on\":{\"time\":{\"$\":[\"started on-time\"]}},\"ended on\":{\"time\":{\"$\":[\"ended on-time\"]}},\"error message\":{\"$\":[\"error message\"]},\"attempt count\":{\"$\":[\"attempt count\"]},\"attempt limit\":{\"$\":[\"attempt limit\"]}}},\"rules\":[[\"Rule\",[\"Body\",[\"Equals\",[\"SelectQuery\",[\"Select\",[[\"Count\",\"*\"]]],[\"From\",[\"Alias\",[\"Table\",\"task\"],\"task.0\"]],[\"Where\",[\"Not\",[\"And\",[\"LessThanOrEqual\",[\"Integer\",1],[\"ReferencedField\",\"task.0\",\"attempt limit\"]],[\"Exists\",[\"ReferencedField\",\"task.0\",\"attempt limit\"]]]]]],[\"Number\",0]]],[\"StructuredEnglish\",\"It is necessary that each task has an attempt limit that is greater than or equal to 1\"]],[\"Rule\",[\"Body\",[\"NotExists\",[\"SelectQuery\",[\"Select\",[[\"ReferencedField\",\"task.1\",\"is executed by-handler\"]]],[\"From\",[\"Alias\",[\"Table\",\"task\"],\"task.1\"]],[\"Where\",[\"And\",[\"Exists\",[\"ReferencedField\",\"task.1\",\"is scheduled with-cron expression\"]],[\"Equals\",[\"Text\",\"queued\"],[\"ReferencedField\",\"task.1\",\"status\"]],[\"Exists\",[\"ReferencedField\",\"task.1\",\"status\"]],[\"GreaterThanOrEqual\",[\"SelectQuery\",[\"Select\",[[\"Count\",\"*\"]]],[\"From\",[\"Alias\",[\"Table\",\"task\"],\"task.4\"]],[\"Where\",[\"And\",[\"Exists\",[\"ReferencedField\",\"task.4\",\"is scheduled with-cron expression\"]],[\"Equals\",[\"Text\",\"queued\"],[\"ReferencedField\",\"task.4\",\"status\"]],[\"Exists\",[\"ReferencedField\",\"task.4\",\"status\"]],[\"Equals\",[\"ReferencedField\",\"task.4\",\"is executed by-handler\"],[\"ReferencedField\",\"task.1\",\"is executed by-handler\"]]]]],[\"Number\",2]]]]]]],[\"StructuredEnglish\",\"It is necessary that each handler that executes a task that is scheduled with a cron expression and has a status that is equal to \\\"queued\\\", executes at most one task that is scheduled with a cron expression and has a status that is equal to \\\"queued\\\".\"]]],\"synonyms\":{},\"lfInfo\":{\"rules\":{\"It is necessary that each task has an attempt limit that is greater than or equal to 1\":{\"root\":{\"table\":\"task\",\"alias\":\"task.0\"}},\"It is necessary that each handler that executes a task that is scheduled with a cron expression and has a status that is equal to \\\"queued\\\", executes at most one task that is scheduled with a cron expression and has a status that is equal to \\\"queued\\\".\":{\"root\":{\"table\":\"task\",\"alias\":\"task.1\"}}}}}}":"\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t","{\"vocab\":\"webresource\",\"abstractSqlModel\":{\"tables\":{\"multipart upload\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"uuid\",\"required\":true,\"references\":{\"resourceName\":\"uuid\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"Short Text\",\"fieldName\":\"resource name\",\"required\":true,\"references\":{\"resourceName\":\"resource name\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"field name\",\"required\":true,\"references\":{\"resourceName\":\"field name\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"resource id\",\"required\":true,\"references\":{\"resourceName\":\"resource id\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"upload id\",\"required\":true,\"references\":{\"resourceName\":\"upload id\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"file key\",\"required\":true,\"references\":{\"resourceName\":\"file key\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"status\",\"required\":true,\"references\":{\"resourceName\":\"status\",\"fieldName\":null},\"checks\":[[\"In\",[\"Field\",\"status\"],[\"Text\",\"pending\"],[\"Text\",\"completed\"],[\"Text\",\"cancelled\"]]]},{\"dataType\":\"Short Text\",\"fieldName\":\"filename\",\"required\":true,\"references\":{\"resourceName\":\"filename\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"content type\",\"required\":true,\"references\":{\"resourceName\":\"content type\",\"fieldName\":null}},{\"dataType\":\"Big Integer\",\"fieldName\":\"size\",\"required\":true,\"references\":{\"resourceName\":\"size\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"chunk size\",\"required\":true,\"references\":{\"resourceName\":\"chunk size\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"expiry date\",\"required\":true,\"references\":{\"resourceName\":\"expiry date\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"is created by-actor\",\"required\":false,\"references\":{\"resourceName\":\"actor\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"multipart upload\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"multipart upload\",\"modelName\":\"multipart upload\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"actor\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"expiry date\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"uuid\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"resource name\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"field name\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"resource id\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"upload id\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"file key\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"status\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"content type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"size\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"chunk size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"valid until date\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"multipart upload\":{\"has\":{\"uuid\":{\"$\":[\"uuid\"]},\"resource name\":{\"$\":[\"resource name\"]},\"field name\":{\"$\":[\"field name\"]},\"resource id\":{\"$\":[\"resource id\"]},\"upload id\":{\"$\":[\"upload id\"]},\"file key\":{\"$\":[\"file key\"]},\"status\":{\"$\":[\"status\"]},\"filename\":{\"$\":[\"filename\"]},\"content type\":{\"$\":[\"content type\"]},\"size\":{\"$\":[\"size\"]},\"chunk size\":{\"$\":[\"chunk size\"]},\"expiry date\":{\"$\":[\"expiry date\"]}},\"multipart upload\":{\"has\":{\"uuid\":{\"$\":[\"uuid\"]},\"resource name\":{\"$\":[\"resource name\"]},\"field name\":{\"$\":[\"field name\"]},\"resource id\":{\"$\":[\"resource id\"]},\"upload id\":{\"$\":[\"upload id\"]},\"file key\":{\"$\":[\"file key\"]},\"status\":{\"$\":[\"status\"]},\"filename\":{\"$\":[\"filename\"]},\"content type\":{\"$\":[\"content type\"]},\"size\":{\"$\":[\"size\"]},\"chunk size\":{\"$\":[\"chunk size\"]},\"expiry date\":{\"$\":[\"expiry date\"]}},\"is created by\":{\"actor\":{\"$\":[\"is created by-actor\"]}}},\"uuid\":{\"$\":[\"uuid\"]},\"resource name\":{\"$\":[\"resource name\"]},\"field name\":{\"$\":[\"field name\"]},\"resource id\":{\"$\":[\"resource id\"]},\"upload id\":{\"$\":[\"upload id\"]},\"file key\":{\"$\":[\"file key\"]},\"status\":{\"$\":[\"status\"]},\"filename\":{\"$\":[\"filename\"]},\"content type\":{\"$\":[\"content type\"]},\"size\":{\"$\":[\"size\"]},\"chunk size\":{\"$\":[\"chunk size\"]},\"expiry date\":{\"$\":[\"expiry date\"]},\"is created by\":{\"actor\":{\"$\":[\"is created by-actor\"]}}}},\"rules\":[],\"synonyms\":{},\"lfInfo\":{\"rules\":{}}}}":"\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t","{\"vocab\":\"example\",\"abstractSqlModel\":{\"tables\":{\"device\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"name\",\"required\":false,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"Text\",\"fieldName\":\"note\",\"required\":false,\"references\":{\"resourceName\":\"note\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"type\",\"required\":true,\"references\":{\"resourceName\":\"type\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"device\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"device\",\"modelName\":\"device\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"},\"deviceb\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"name\",\"required\":false,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"Text\",\"fieldName\":\"note\",\"required\":false,\"references\":{\"resourceName\":\"note\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"type\",\"required\":true,\"references\":{\"resourceName\":\"type\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"deviceb\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"deviceb\",\"modelName\":\"deviceb\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"name\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"note\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"device\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"type\":{\"$\":[\"type\"]}},\"device\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"type\":{\"$\":[\"type\"]}}},\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"type\":{\"$\":[\"type\"]}},\"deviceb\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"type\":{\"$\":[\"type\"]}},\"deviceb\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"type\":{\"$\":[\"type\"]}}},\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"type\":{\"$\":[\"type\"]}}},\"rules\":[],\"synonyms\":{},\"lfInfo\":{\"rules\":{}}}}":"\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\n\n\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t","{\"vocab\":\"example\",\"abstractSqlModel\":{\"tables\":{\"organization\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"name\",\"required\":true,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"WebResource\",\"fieldName\":\"not translated webresource\",\"required\":false,\"references\":{\"resourceName\":\"not translated webresource\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"WebResource\",\"fieldName\":\"logo image\",\"required\":false,\"references\":{\"resourceName\":\"logo image\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"WebResource\",\"fieldName\":\"unrestricted artifact\",\"required\":false,\"references\":{\"resourceName\":\"unrestricted artifact\",\"fieldName\":null},\"index\":\"UNIQUE\"}],\"primitive\":false,\"name\":\"organization\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"organization\",\"modelName\":\"organization\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"},\"organization-releases-public artifacts\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"organization\",\"required\":true,\"references\":{\"resourceName\":\"organization\",\"fieldName\":\"id\"}},{\"dataType\":\"WebResource\",\"fieldName\":\"releases-public artifacts\",\"required\":true},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"organization-releases-public artifacts\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"organization\",\"releases-public artifacts\"]}],\"idField\":\"id\",\"resourceName\":\"organization-releases-public artifacts\",\"modelName\":\"organization releases public artifacts\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"organization-has-private artifacts\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"organization\",\"required\":true,\"references\":{\"resourceName\":\"organization\",\"fieldName\":\"id\"}},{\"dataType\":\"WebResource\",\"fieldName\":\"private artifacts\",\"required\":true},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"organization private artifacts\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"organization\",\"private artifacts\"]}],\"idField\":\"id\",\"resourceName\":\"organization-has-private artifacts\",\"modelName\":\"organization has private artifacts\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"name\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"logo image\":{\"WebResource\":{\"$\":[\"WebResource\"]},\"has\":{\"WebResource\":{\"$\":[\"WebResource\"]}}},\"not translated webresource\":{\"WebResource\":{\"$\":[\"WebResource\"]},\"has\":{\"WebResource\":{\"$\":[\"WebResource\"]}}},\"public artifacts\":{\"WebResource\":{\"$\":[\"WebResource\"]},\"has\":{\"WebResource\":{\"$\":[\"WebResource\"]}}},\"private artifacts\":{\"WebResource\":{\"$\":[\"WebResource\"]},\"has\":{\"WebResource\":{\"$\":[\"WebResource\"]}}},\"unrestricted artifact\":{\"WebResource\":{\"$\":[\"WebResource\"]},\"has\":{\"WebResource\":{\"$\":[\"WebResource\"]}}},\"organization\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"not translated webresource\":{\"$\":[\"not translated webresource\"]},\"logo image\":{\"$\":[\"logo image\"]},\"private artifacts\":{\"$\":[\"id\",[\"organization-has-private artifacts\",\"organization\"]]},\"organization\":{\"has\":{\"private artifacts\":{\"$\":[\"id\",[\"organization-has-private artifacts\",\"organization\"]]}}},\"unrestricted artifact\":{\"$\":[\"unrestricted artifact\"]}},\"organization\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"not translated webresource\":{\"$\":[\"not translated webresource\"]},\"logo image\":{\"$\":[\"logo image\"]},\"private artifacts\":{\"$\":[\"id\",[\"organization-has-private artifacts\",\"organization\"]]},\"unrestricted artifact\":{\"$\":[\"unrestricted artifact\"]}},\"releases\":{\"public artifacts\":{\"$\":[\"id\",[\"organization-releases-public artifacts\",\"organization\"]]}}},\"name\":{\"$\":[\"name\"]},\"not translated webresource\":{\"$\":[\"not translated webresource\"]},\"logo image\":{\"$\":[\"logo image\"]},\"releases\":{\"public artifacts\":{\"$\":[\"id\",[\"organization-releases-public artifacts\",\"organization\"]]}},\"unrestricted artifact\":{\"$\":[\"unrestricted artifact\"]}},\"organization-releases-public artifacts\":{\"organization\":{\"$\":[\"organization\",[\"organization\",\"id\"]]},\"public artifacts\":{\"$\":[\"releases-public artifacts\"]},\"releases\":{\"public artifacts\":{\"$\":[\"releases-public artifacts\"]}}},\"organization-has-private artifacts\":{\"organization\":{\"$\":[\"organization\",[\"organization\",\"id\"]]},\"private artifacts\":{\"$\":[\"private artifacts\"]},\"has\":{\"private artifacts\":{\"$\":[\"private artifacts\"]}}}},\"rules\":[[\"Rule\",[\"Body\",[\"Equals\",[\"SelectQuery\",[\"Select\",[[\"Count\",\"*\"]]],[\"From\",[\"Alias\",[\"Table\",\"organization\"],\"organization.0\"]],[\"Where\",[\"And\",[\"Exists\",[\"ReferencedField\",\"organization.0\",\"name\"]],[\"Not\",[\"And\",[\"LessThan\",[\"Integer\",0],[\"CharacterLength\",[\"ReferencedField\",\"organization.0\",\"name\"]]],[\"LessThanOrEqual\",[\"CharacterLength\",[\"ReferencedField\",\"organization.0\",\"name\"]],[\"Integer\",5]],[\"Exists\",[\"CharacterLength\",[\"ReferencedField\",\"organization.0\",\"name\"]]],[\"Exists\",[\"ReferencedField\",\"organization.0\",\"name\"]]]]]]],[\"Number\",0]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5\"]],[\"Rule\",[\"Body\",[\"Equals\",[\"SelectQuery\",[\"Select\",[[\"Count\",\"*\"]]],[\"From\",[\"Alias\",[\"Table\",\"organization\"],\"organization.0\"]],[\"Where\",[\"And\",[\"Exists\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"]],[\"Not\",[\"And\",[\"Or\",[\"Equals\",[\"Text\",\"image/png\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"Equals\",[\"Text\",\"image/jpg\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"Equals\",[\"Text\",\"image/jpeg\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]]],[\"Exists\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"LessThan\",[\"Cast\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"size\"]]],\"Big Integer\"],[\"Integer\",18874368]],[\"Exists\",[\"Cast\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"size\"]]],\"Big Integer\"]],[\"Exists\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"]]]]]]],[\"Number\",0]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\"]],[\"Rule\",[\"Body\",[\"Equals\",[\"SelectQuery\",[\"Select\",[[\"Count\",\"*\"]]],[\"From\",[\"Alias\",[\"Table\",\"organization\"],\"organization.0\"]],[\"Where\",[\"And\",[\"Exists\",[\"ReferencedField\",\"organization.0\",\"logo image\"]],[\"Not\",[\"And\",[\"Or\",[\"Equals\",[\"Text\",\"image/png\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"logo image\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"Equals\",[\"Text\",\"image/jpg\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"logo image\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"Equals\",[\"Text\",\"image/jpeg\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"logo image\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]]],[\"Exists\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"logo image\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"LessThan\",[\"Cast\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"logo image\"],[\"TextArray\",[\"EmbeddedText\",\"size\"]]],\"Big Integer\"],[\"Integer\",18874368]],[\"Exists\",[\"Cast\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"logo image\"],[\"TextArray\",[\"EmbeddedText\",\"size\"]]],\"Big Integer\"]],[\"Exists\",[\"ReferencedField\",\"organization.0\",\"logo image\"]]]]]]],[\"Number\",0]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a logo image, has a logo image that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\"]]],\"synonyms\":{\"organization private artifacts\":\"organization-has-private artifacts\"},\"lfInfo\":{\"rules\":{\"It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5\":{\"root\":{\"table\":\"organization\",\"alias\":\"organization.0\"}},\"It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\":{\"root\":{\"table\":\"organization\",\"alias\":\"organization.0\"}},\"It is necessary that each organization that has a logo image, has a logo image that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\":{\"root\":{\"table\":\"organization\",\"alias\":\"organization.0\"}}}}}}":"\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\t\t\t\t\t\n\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\t\t\t\t\t\n\t\n\t\n\n\n\t\n\t\n\n\t\t\t\t\t\n\n\t\t\t\t\t\n\n\n\n\t\n\t\n\t\t\t\t\t\t\t\t\n\n\t\n\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t","{\"vocab\":\"v1\",\"abstractSqlModel\":{\"tables\":{\"organization\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"name\",\"required\":true,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"WebResource\",\"fieldName\":\"not translated webresource\",\"required\":false,\"references\":{\"resourceName\":\"not translated webresource\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"WebResource\",\"fieldName\":\"other image\",\"required\":false,\"references\":{\"resourceName\":\"other image\",\"fieldName\":null},\"index\":\"UNIQUE\"}],\"primitive\":false,\"name\":\"organization\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"organization\",\"modelName\":\"organization\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"name\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"other image\":{\"WebResource\":{\"$\":[\"WebResource\"]},\"has\":{\"WebResource\":{\"$\":[\"WebResource\"]}}},\"not translated webresource\":{\"WebResource\":{\"$\":[\"WebResource\"]},\"has\":{\"WebResource\":{\"$\":[\"WebResource\"]}}},\"organization\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"not translated webresource\":{\"$\":[\"not translated webresource\"]},\"other image\":{\"$\":[\"other image\"]}},\"organization\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"not translated webresource\":{\"$\":[\"not translated webresource\"]},\"other image\":{\"$\":[\"other image\"]}}},\"name\":{\"$\":[\"name\"]},\"not translated webresource\":{\"$\":[\"not translated webresource\"]},\"other image\":{\"$\":[\"other image\"]}},\"version\":{\"v1\":{}}},\"rules\":[[\"Rule\",[\"Body\",[\"Equals\",[\"SelectQuery\",[\"Select\",[[\"Count\",\"*\"]]],[\"From\",[\"Alias\",[\"Table\",\"organization\"],\"organization.0\"]],[\"Where\",[\"And\",[\"Exists\",[\"ReferencedField\",\"organization.0\",\"name\"]],[\"Not\",[\"And\",[\"LessThan\",[\"Integer\",0],[\"CharacterLength\",[\"ReferencedField\",\"organization.0\",\"name\"]]],[\"LessThanOrEqual\",[\"CharacterLength\",[\"ReferencedField\",\"organization.0\",\"name\"]],[\"Integer\",5]],[\"Exists\",[\"CharacterLength\",[\"ReferencedField\",\"organization.0\",\"name\"]]],[\"Exists\",[\"ReferencedField\",\"organization.0\",\"name\"]]]]]]],[\"Number\",0]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5\"]],[\"Rule\",[\"Body\",[\"Equals\",[\"SelectQuery\",[\"Select\",[[\"Count\",\"*\"]]],[\"From\",[\"Alias\",[\"Table\",\"organization\"],\"organization.0\"]],[\"Where\",[\"And\",[\"Exists\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"]],[\"Not\",[\"And\",[\"Or\",[\"Equals\",[\"Text\",\"image/png\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"Equals\",[\"Text\",\"image/jpg\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"Equals\",[\"Text\",\"image/jpeg\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]]],[\"Exists\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"LessThan\",[\"Cast\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"size\"]]],\"Big Integer\"],[\"Integer\",18874368]],[\"Exists\",[\"Cast\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"size\"]]],\"Big Integer\"]],[\"Exists\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"]]]]]]],[\"Number\",0]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\"]],[\"Rule\",[\"Body\",[\"Equals\",[\"SelectQuery\",[\"Select\",[[\"Count\",\"*\"]]],[\"From\",[\"Alias\",[\"Table\",\"organization\"],\"organization.0\"]],[\"Where\",[\"And\",[\"Exists\",[\"ReferencedField\",\"organization.0\",\"other image\"]],[\"Not\",[\"And\",[\"Or\",[\"Equals\",[\"Text\",\"image/png\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"other image\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"Equals\",[\"Text\",\"image/jpg\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"other image\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"Equals\",[\"Text\",\"image/jpeg\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"other image\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]]],[\"Exists\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"other image\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"LessThan\",[\"Cast\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"other image\"],[\"TextArray\",[\"EmbeddedText\",\"size\"]]],\"Big Integer\"],[\"Integer\",18874368]],[\"Exists\",[\"Cast\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"other image\"],[\"TextArray\",[\"EmbeddedText\",\"size\"]]],\"Big Integer\"]],[\"Exists\",[\"ReferencedField\",\"organization.0\",\"other image\"]]]]]]],[\"Number\",0]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a other image, has a other image that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\"]]],\"synonyms\":{},\"lfInfo\":{\"rules\":{\"It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5\":{\"root\":{\"table\":\"organization\",\"alias\":\"organization.0\"}},\"It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\":{\"root\":{\"table\":\"organization\",\"alias\":\"organization.0\"}},\"It is necessary that each organization that has a other image, has a other image that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\":{\"root\":{\"table\":\"organization\",\"alias\":\"organization.0\"}}}}}}":"\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\n\n\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t","{\"vocab\":\"example\",\"abstractSqlModel\":{\"tables\":{\"device\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"name\",\"required\":false,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"Text\",\"fieldName\":\"note\",\"required\":false,\"references\":{\"resourceName\":\"note\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"last heartbeat\",\"required\":false,\"references\":{\"resourceName\":\"last heartbeat\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"type\",\"required\":true,\"references\":{\"resourceName\":\"type\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"count\",\"required\":false,\"references\":{\"resourceName\":\"count\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"device\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"device\",\"modelName\":\"device\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"name\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"note\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"last heartbeat\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"count\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"device\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"last heartbeat\":{\"$\":[\"last heartbeat\"]},\"type\":{\"$\":[\"type\"]},\"count\":{\"$\":[\"count\"]}},\"device\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"last heartbeat\":{\"$\":[\"last heartbeat\"]},\"type\":{\"$\":[\"type\"]},\"count\":{\"$\":[\"count\"]}}},\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"last heartbeat\":{\"$\":[\"last heartbeat\"]},\"type\":{\"$\":[\"type\"]},\"count\":{\"$\":[\"count\"]}}},\"rules\":[],\"synonyms\":{},\"lfInfo\":{\"rules\":{}}}}":"\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\n\n\n\n\n\n\n\n\n\t\t\t\t\t\n\t\t\t\t\t\n\n\t\t\t\t\t\n\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t"}},"sqlModel":{"11.3.21+postgres":{"{\"tables\":{\"model\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"is of-vocabulary\",\"required\":true,\"references\":{\"resourceName\":\"vocabulary\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"model type\",\"required\":true,\"references\":{\"resourceName\":\"model type\",\"fieldName\":null}},{\"dataType\":\"JSON\",\"fieldName\":\"model value\",\"required\":true,\"references\":{\"resourceName\":\"model value\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"model\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"model\",\"modelName\":\"model\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"model value\"},\"model$dev\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"is of-vocabulary\",\"required\":true,\"references\":{\"resourceName\":\"vocabulary\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"model type\",\"required\":true,\"references\":{\"resourceName\":\"model type\",\"fieldName\":null}},{\"dataType\":\"JSON\",\"fieldName\":\"model value\",\"required\":true,\"references\":{\"resourceName\":\"model value\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"model\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"model\",\"modelName\":\"model\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"model value\"}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"model value\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"vocabulary\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"model type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"model\":{\"is of\":{\"vocabulary\":{\"$\":[\"is of-vocabulary\"]}},\"model\":{\"is of\":{\"vocabulary\":{\"$\":[\"is of-vocabulary\"]}},\"has\":{\"model type\":{\"$\":[\"model type\"]},\"model value\":{\"$\":[\"model value\"]}}},\"has\":{\"model type\":{\"$\":[\"model type\"]},\"model value\":{\"$\":[\"model value\"]}},\"model type\":{\"$\":[\"model type\"]},\"model value\":{\"$\":[\"model value\"]}}},\"rules\":[],\"synonyms\":{},\"lfInfo\":{\"rules\":{}}}":{"synonyms":{},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"model value":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"vocabulary":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"model type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"model":{"is of":{"vocabulary":{"$":["is of-vocabulary"]}},"model":{"is of":{"vocabulary":{"$":["is of-vocabulary"]}},"has":{"model type":{"$":["model type"]},"model value":{"$":["model value"]}}},"has":{"model type":{"$":["model type"]},"model value":{"$":["model value"]}},"model type":{"$":["model type"]},"model value":{"$":["model value"]}}},"tables":{"model":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"is of-vocabulary","required":true,"references":{"resourceName":"vocabulary","fieldName":null}},{"dataType":"Short Text","fieldName":"model type","required":true,"references":{"resourceName":"model type","fieldName":null}},{"dataType":"JSON","fieldName":"model value","required":true,"references":{"resourceName":"model value","fieldName":null}}],"primitive":false,"name":"model","indexes":[],"idField":"id","resourceName":"model","modelName":"model","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"model value","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"model$dev":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"is of-vocabulary","required":true,"references":{"resourceName":"vocabulary","fieldName":null}},{"dataType":"Short Text","fieldName":"model type","required":true,"references":{"resourceName":"model type","fieldName":null}},{"dataType":"JSON","fieldName":"model value","required":true,"references":{"resourceName":"model value","fieldName":null}}],"primitive":false,"name":"model","indexes":[],"idField":"id","resourceName":"model","modelName":"model","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"model value","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}}},"createSchema":["DO $$\nBEGIN\n\tCREATE FUNCTION \"trigger_update_modified_at\"()\n\tRETURNS TRIGGER AS $fn$\n\tBEGIN\n\t\tNEW.\"modified at\" = NOW();\nRETURN NEW;\n\tEND;\n\t$fn$ LANGUAGE plpgsql;\nEXCEPTION WHEN duplicate_function THEN\n\tNULL;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"model\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\t\"is of-vocabulary\" VARCHAR(255) NOT NULL\n,\t\"model type\" VARCHAR(255) NOT NULL\n,\t\"model value\" JSONB NOT NULL\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'model'\n\tAND \"trigger_name\" = 'model_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"model_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"model\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;"],"dropSchema":["DROP TABLE \"model\";","DROP TRIGGER \"model_trigger_update_modified_at\";","DROP FUNCTION \"trigger_update_modified_at\"();"],"rules":[]},"{\"tables\":{\"permission\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Text\",\"fieldName\":\"name\",\"required\":true,\"references\":{\"resourceName\":\"name\",\"fieldName\":null},\"index\":\"UNIQUE\"}],\"primitive\":false,\"name\":\"permission\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"permission\",\"modelName\":\"permission\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"name\"},\"role\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Text\",\"fieldName\":\"name\",\"required\":true,\"references\":{\"resourceName\":\"name\",\"fieldName\":null},\"index\":\"UNIQUE\"}],\"primitive\":false,\"name\":\"role\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"role\",\"modelName\":\"role\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"name\"},\"role-has-permission\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"role\",\"required\":true,\"references\":{\"resourceName\":\"role\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"permission\",\"required\":true,\"references\":{\"resourceName\":\"permission\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"role-has-permission\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"role\",\"permission\"]}],\"idField\":\"id\",\"resourceName\":\"role-has-permission\",\"modelName\":\"role has permission\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"actor\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"actor\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"actor\",\"modelName\":\"actor\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"},\"user\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"ConceptType\",\"fieldName\":\"actor\",\"required\":true,\"references\":{\"resourceName\":\"actor\",\"fieldName\":\"id\"}},{\"dataType\":\"Short Text\",\"fieldName\":\"username\",\"required\":true,\"references\":{\"resourceName\":\"username\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"Hashed\",\"fieldName\":\"password\",\"required\":true,\"references\":{\"resourceName\":\"password\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"user\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"user\",\"modelName\":\"user\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"username\"},\"user-has-role\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"user\",\"required\":true,\"references\":{\"resourceName\":\"user\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"role\",\"required\":true,\"references\":{\"resourceName\":\"role\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Date Time\",\"fieldName\":\"expiry date\",\"required\":false,\"references\":{\"resourceName\":\"expiry date\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"user-has-role\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"user\",\"role\"]}],\"idField\":\"id\",\"resourceName\":\"user-has-role\",\"modelName\":\"user has role\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"user-has-permission\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"user\",\"required\":true,\"references\":{\"resourceName\":\"user\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"permission\",\"required\":true,\"references\":{\"resourceName\":\"permission\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Date Time\",\"fieldName\":\"expiry date\",\"required\":false,\"references\":{\"resourceName\":\"expiry date\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"user-has-permission\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"user\",\"permission\"]}],\"idField\":\"id\",\"resourceName\":\"user-has-permission\",\"modelName\":\"user has permission\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"api key\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"key\",\"required\":true,\"references\":{\"resourceName\":\"key\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"Date Time\",\"fieldName\":\"expiry date\",\"required\":false,\"references\":{\"resourceName\":\"expiry date\",\"fieldName\":null}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"is of-actor\",\"required\":true,\"references\":{\"resourceName\":\"actor\",\"fieldName\":\"id\"}},{\"dataType\":\"Text\",\"fieldName\":\"name\",\"required\":false,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"Text\",\"fieldName\":\"description\",\"required\":false,\"references\":{\"resourceName\":\"description\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"api key\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"api key\",\"modelName\":\"api key\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"key\"},\"api key-has-role\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"api key\",\"required\":true,\"references\":{\"resourceName\":\"api key\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"role\",\"required\":true,\"references\":{\"resourceName\":\"role\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"api key-has-role\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"api key\",\"role\"]}],\"idField\":\"id\",\"resourceName\":\"api key-has-role\",\"modelName\":\"api key has role\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"api key-has-permission\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"api key\",\"required\":true,\"references\":{\"resourceName\":\"api key\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"permission\",\"required\":true,\"references\":{\"resourceName\":\"permission\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"api key-has-permission\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"api key\",\"permission\"]}],\"idField\":\"id\",\"resourceName\":\"api key-has-permission\",\"modelName\":\"api key has permission\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"permission$Auth\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Text\",\"fieldName\":\"name\",\"required\":true,\"references\":{\"resourceName\":\"name\",\"fieldName\":null},\"index\":\"UNIQUE\"}],\"primitive\":false,\"name\":\"permission\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"permission\",\"modelName\":\"permission\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"name\"},\"role$Auth\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Text\",\"fieldName\":\"name\",\"required\":true,\"references\":{\"resourceName\":\"name\",\"fieldName\":null},\"index\":\"UNIQUE\"}],\"primitive\":false,\"name\":\"role\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"role\",\"modelName\":\"role\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"name\"},\"role-has-permission$Auth\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"role\",\"required\":true,\"references\":{\"resourceName\":\"role\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"permission\",\"required\":true,\"references\":{\"resourceName\":\"permission\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"role-has-permission\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"role\",\"permission\"]}],\"idField\":\"id\",\"resourceName\":\"role-has-permission\",\"modelName\":\"role has permission\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"actor$Auth\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"actor\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"actor\",\"modelName\":\"actor\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"},\"user$Auth\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"ConceptType\",\"fieldName\":\"actor\",\"required\":true,\"references\":{\"resourceName\":\"actor\",\"fieldName\":\"id\"}},{\"dataType\":\"Short Text\",\"fieldName\":\"username\",\"required\":true,\"references\":{\"resourceName\":\"username\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"Hashed\",\"fieldName\":\"password\",\"required\":true,\"references\":{\"resourceName\":\"password\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"user\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"user\",\"modelName\":\"user\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"username\"},\"user-has-role$Auth\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"user\",\"required\":true,\"references\":{\"resourceName\":\"user\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"role\",\"required\":true,\"references\":{\"resourceName\":\"role\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Date Time\",\"fieldName\":\"expiry date\",\"required\":false,\"references\":{\"resourceName\":\"expiry date\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"user-has-role\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"user\",\"role\"]}],\"idField\":\"id\",\"resourceName\":\"user-has-role\",\"modelName\":\"user has role\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"user-has-permission$Auth\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"user\",\"required\":true,\"references\":{\"resourceName\":\"user\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"permission\",\"required\":true,\"references\":{\"resourceName\":\"permission\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Date Time\",\"fieldName\":\"expiry date\",\"required\":false,\"references\":{\"resourceName\":\"expiry date\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"user-has-permission\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"user\",\"permission\"]}],\"idField\":\"id\",\"resourceName\":\"user-has-permission\",\"modelName\":\"user has permission\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"api key$Auth\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"key\",\"required\":true,\"references\":{\"resourceName\":\"key\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"Date Time\",\"fieldName\":\"expiry date\",\"required\":false,\"references\":{\"resourceName\":\"expiry date\",\"fieldName\":null}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"is of-actor\",\"required\":true,\"references\":{\"resourceName\":\"actor\",\"fieldName\":\"id\"}},{\"dataType\":\"Text\",\"fieldName\":\"name\",\"required\":false,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"Text\",\"fieldName\":\"description\",\"required\":false,\"references\":{\"resourceName\":\"description\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"api key\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"api key\",\"modelName\":\"api key\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"key\"},\"api key-has-role$Auth\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"api key\",\"required\":true,\"references\":{\"resourceName\":\"api key\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"role\",\"required\":true,\"references\":{\"resourceName\":\"role\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"api key-has-role\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"api key\",\"role\"]}],\"idField\":\"id\",\"resourceName\":\"api key-has-role\",\"modelName\":\"api key has role\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"api key-has-permission$Auth\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"api key\",\"required\":true,\"references\":{\"resourceName\":\"api key\",\"fieldName\":\"id\"}},{\"dataType\":\"ForeignKey\",\"fieldName\":\"permission\",\"required\":true,\"references\":{\"resourceName\":\"permission\",\"fieldName\":\"id\"}},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"api key-has-permission\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"api key\",\"permission\"]}],\"idField\":\"id\",\"resourceName\":\"api key-has-permission\",\"modelName\":\"api key has permission\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"username\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"password\":{\"Hashed\":{\"$\":[\"Hashed\"]},\"has\":{\"Hashed\":{\"$\":[\"Hashed\"]}}},\"name\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"key\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"expiry date\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"description\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"permission\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"user\":{\"has\":{\"permission\":{\"$\":[\"id\",[\"user-has-permission\",\"permission\"]]}}}},\"permission\":{\"has\":{\"name\":{\"$\":[\"name\"]}}},\"name\":{\"$\":[\"name\"]},\"is of\":{\"role\":{\"$\":[\"id\",[\"role-has-permission\",\"permission\"]]},\"user\":{\"$\":[\"id\",[\"user-has-permission\",\"permission\"]]},\"api key\":{\"$\":[\"id\",[\"api key-has-permission\",\"permission\"]]}},\"user\":{\"has\":{\"permission\":{\"$\":[\"id\",[\"user-has-permission\",\"permission\"]]}}}},\"role\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"permission\":{\"$\":[\"id\",[\"role-has-permission\",\"role\"]]},\"user\":{\"has\":{\"role\":{\"$\":[\"id\",[\"user-has-role\",\"role\"]]}}}},\"role\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"permission\":{\"$\":[\"id\",[\"role-has-permission\",\"role\"]]}}},\"name\":{\"$\":[\"name\"]},\"user\":{\"has\":{\"role\":{\"$\":[\"id\",[\"user-has-role\",\"role\"]]}}},\"is of\":{\"user\":{\"$\":[\"id\",[\"user-has-role\",\"role\"]]},\"api key\":{\"$\":[\"id\",[\"api key-has-role\",\"role\"]]}}},\"role-has-permission\":{\"role\":{\"$\":[\"role\",[\"role\",\"id\"]]},\"permission\":{\"$\":[\"permission\",[\"permission\",\"id\"]]},\"has\":{\"permission\":{\"$\":[\"permission\",[\"permission\",\"id\"]]}},\"is of\":{\"role\":{\"$\":[\"role\",[\"role\",\"id\"]]}}},\"actor\":{\"is of\":{\"user\":{\"$\":[\"id\",[\"user\",\"actor\"]]}},\"api key\":{\"$\":[\"id\",[\"api key\",\"is of-actor\"]]},\"has\":{\"api key\":{\"$\":[\"id\",[\"api key\",\"is of-actor\"]]}}},\"user\":{\"actor\":{\"$\":[\"actor\",[\"actor\",\"id\"]]},\"has\":{\"actor\":{\"$\":[\"actor\",[\"actor\",\"id\"]]},\"username\":{\"$\":[\"username\"]},\"password\":{\"$\":[\"password\"]},\"role\":{\"$\":[\"id\",[\"user-has-role\",\"user\"]]},\"user\":{\"has\":{\"role\":{\"$\":[\"id\",[\"user-has-role\",\"user\"]]},\"permission\":{\"$\":[\"id\",[\"user-has-permission\",\"user\"]]}}},\"permission\":{\"$\":[\"id\",[\"user-has-permission\",\"user\"]]}},\"user\":{\"has\":{\"username\":{\"$\":[\"username\"]},\"password\":{\"$\":[\"password\"]},\"role\":{\"$\":[\"id\",[\"user-has-role\",\"user\"]]},\"permission\":{\"$\":[\"id\",[\"user-has-permission\",\"user\"]]}}},\"username\":{\"$\":[\"username\"]},\"password\":{\"$\":[\"password\"]}},\"user-has-role\":{\"user\":{\"$\":[\"user\",[\"user\",\"id\"]],\"has\":{\"role\":{\"has\":{\"expiry date\":{\"$\":[\"expiry date\"]}}}}},\"role\":{\"$\":[\"role\",[\"role\",\"id\"]]},\"has\":{\"role\":{\"$\":[\"role\",[\"role\",\"id\"]]},\"expiry date\":{\"$\":[\"expiry date\"]}},\"is of\":{\"user\":{\"$\":[\"user\",[\"user\",\"id\"]]}},\"expiry date\":{\"$\":[\"expiry date\"]}},\"user-has-permission\":{\"user\":{\"$\":[\"user\",[\"user\",\"id\"]],\"has\":{\"permission\":{\"has\":{\"expiry date\":{\"$\":[\"expiry date\"]}}}}},\"permission\":{\"$\":[\"permission\",[\"permission\",\"id\"]]},\"has\":{\"permission\":{\"$\":[\"permission\",[\"permission\",\"id\"]]},\"expiry date\":{\"$\":[\"expiry date\"]}},\"is of\":{\"user\":{\"$\":[\"user\",[\"user\",\"id\"]]}},\"expiry date\":{\"$\":[\"expiry date\"]}},\"api key\":{\"has\":{\"key\":{\"$\":[\"key\"]},\"expiry date\":{\"$\":[\"expiry date\"]},\"role\":{\"$\":[\"id\",[\"api key-has-role\",\"api key\"]]},\"permission\":{\"$\":[\"id\",[\"api key-has-permission\",\"api key\"]]},\"name\":{\"$\":[\"name\"]},\"description\":{\"$\":[\"description\"]}},\"api key\":{\"has\":{\"key\":{\"$\":[\"key\"]},\"expiry date\":{\"$\":[\"expiry date\"]},\"role\":{\"$\":[\"id\",[\"api key-has-role\",\"api key\"]]},\"permission\":{\"$\":[\"id\",[\"api key-has-permission\",\"api key\"]]},\"name\":{\"$\":[\"name\"]},\"description\":{\"$\":[\"description\"]}},\"is of\":{\"actor\":{\"$\":[\"id\",[\"api key-is of-actor\",\"api key\"]]}}},\"key\":{\"$\":[\"key\"]},\"expiry date\":{\"$\":[\"expiry date\"]},\"is of\":{\"actor\":{\"$\":[\"is of-actor\",[\"actor\",\"id\"]]}},\"name\":{\"$\":[\"name\"]},\"description\":{\"$\":[\"description\"]}},\"api key-has-role\":{\"api key\":{\"$\":[\"api key\",[\"api key\",\"id\"]]},\"role\":{\"$\":[\"role\",[\"role\",\"id\"]]},\"has\":{\"role\":{\"$\":[\"role\",[\"role\",\"id\"]]}},\"is of\":{\"api key\":{\"$\":[\"api key\",[\"api key\",\"id\"]]}}},\"api key-has-permission\":{\"api key\":{\"$\":[\"api key\",[\"api key\",\"id\"]]},\"permission\":{\"$\":[\"permission\",[\"permission\",\"id\"]]},\"has\":{\"permission\":{\"$\":[\"permission\",[\"permission\",\"id\"]]}},\"is of\":{\"api key\":{\"$\":[\"api key\",[\"api key\",\"id\"]]}}}},\"rules\":[],\"synonyms\":{\"user role\":\"user-has-role\",\"user permission\":\"user-has-permission\"},\"lfInfo\":{\"rules\":{}}}":{"synonyms":{"user role":"user-has-role","user permission":"user-has-permission"},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"username":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"password":{"Hashed":{"$":["Hashed"]},"has":{"Hashed":{"$":["Hashed"]}}},"name":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"key":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"expiry date":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"description":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"permission":{"has":{"name":{"$":["name"]},"user":{"has":{"permission":{"$":["id",["user-has-permission","permission"]]}}}},"permission":{"has":{"name":{"$":["name"]}}},"name":{"$":["name"]},"is of":{"role":{"$":["id",["role-has-permission","permission"]]},"user":{"$":["id",["user-has-permission","permission"]]},"api key":{"$":["id",["api key-has-permission","permission"]]}},"user":{"has":{"permission":{"$":["id",["user-has-permission","permission"]]}}}},"role":{"has":{"name":{"$":["name"]},"permission":{"$":["id",["role-has-permission","role"]]},"user":{"has":{"role":{"$":["id",["user-has-role","role"]]}}}},"role":{"has":{"name":{"$":["name"]},"permission":{"$":["id",["role-has-permission","role"]]}}},"name":{"$":["name"]},"user":{"has":{"role":{"$":["id",["user-has-role","role"]]}}},"is of":{"user":{"$":["id",["user-has-role","role"]]},"api key":{"$":["id",["api key-has-role","role"]]}}},"role-has-permission":{"role":{"$":["role",["role","id"]]},"permission":{"$":["permission",["permission","id"]]},"has":{"permission":{"$":["permission",["permission","id"]]}},"is of":{"role":{"$":["role",["role","id"]]}}},"actor":{"is of":{"user":{"$":["id",["user","actor"]]}},"api key":{"$":["id",["api key","is of-actor"]]},"has":{"api key":{"$":["id",["api key","is of-actor"]]}}},"user":{"actor":{"$":["actor",["actor","id"]]},"has":{"actor":{"$":["actor",["actor","id"]]},"username":{"$":["username"]},"password":{"$":["password"]},"role":{"$":["id",["user-has-role","user"]]},"user":{"has":{"role":{"$":["id",["user-has-role","user"]]},"permission":{"$":["id",["user-has-permission","user"]]}}},"permission":{"$":["id",["user-has-permission","user"]]}},"user":{"has":{"username":{"$":["username"]},"password":{"$":["password"]},"role":{"$":["id",["user-has-role","user"]]},"permission":{"$":["id",["user-has-permission","user"]]}}},"username":{"$":["username"]},"password":{"$":["password"]}},"user-has-role":{"user":{"$":["user",["user","id"]],"has":{"role":{"has":{"expiry date":{"$":["expiry date"]}}}}},"role":{"$":["role",["role","id"]]},"has":{"role":{"$":["role",["role","id"]]},"expiry date":{"$":["expiry date"]}},"is of":{"user":{"$":["user",["user","id"]]}},"expiry date":{"$":["expiry date"]}},"user-has-permission":{"user":{"$":["user",["user","id"]],"has":{"permission":{"has":{"expiry date":{"$":["expiry date"]}}}}},"permission":{"$":["permission",["permission","id"]]},"has":{"permission":{"$":["permission",["permission","id"]]},"expiry date":{"$":["expiry date"]}},"is of":{"user":{"$":["user",["user","id"]]}},"expiry date":{"$":["expiry date"]}},"api key":{"has":{"key":{"$":["key"]},"expiry date":{"$":["expiry date"]},"role":{"$":["id",["api key-has-role","api key"]]},"permission":{"$":["id",["api key-has-permission","api key"]]},"name":{"$":["name"]},"description":{"$":["description"]}},"api key":{"has":{"key":{"$":["key"]},"expiry date":{"$":["expiry date"]},"role":{"$":["id",["api key-has-role","api key"]]},"permission":{"$":["id",["api key-has-permission","api key"]]},"name":{"$":["name"]},"description":{"$":["description"]}},"is of":{"actor":{"$":["id",["api key-is of-actor","api key"]]}}},"key":{"$":["key"]},"expiry date":{"$":["expiry date"]},"is of":{"actor":{"$":["is of-actor",["actor","id"]]}},"name":{"$":["name"]},"description":{"$":["description"]}},"api key-has-role":{"api key":{"$":["api key",["api key","id"]]},"role":{"$":["role",["role","id"]]},"has":{"role":{"$":["role",["role","id"]]}},"is of":{"api key":{"$":["api key",["api key","id"]]}}},"api key-has-permission":{"api key":{"$":["api key",["api key","id"]]},"permission":{"$":["permission",["permission","id"]]},"has":{"permission":{"$":["permission",["permission","id"]]}},"is of":{"api key":{"$":["api key",["api key","id"]]}}}},"tables":{"permission":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Text","fieldName":"name","required":true,"references":{"resourceName":"name","fieldName":null},"index":"UNIQUE"}],"primitive":false,"name":"permission","indexes":[],"idField":"id","resourceName":"permission","modelName":"permission","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"name","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"role":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Text","fieldName":"name","required":true,"references":{"resourceName":"name","fieldName":null},"index":"UNIQUE"}],"primitive":false,"name":"role","indexes":[],"idField":"id","resourceName":"role","modelName":"role","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"name","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"role-has-permission":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"role","required":true,"references":{"resourceName":"role","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"permission","required":true,"references":{"resourceName":"permission","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"role-has-permission","indexes":[{"type":"UNIQUE","fields":["role","permission"]}],"idField":"id","resourceName":"role-has-permission","modelName":"role has permission","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"actor":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"actor","indexes":[],"idField":"id","resourceName":"actor","modelName":"actor","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"user":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"ConceptType","fieldName":"actor","required":true,"references":{"resourceName":"actor","fieldName":"id"}},{"dataType":"Short Text","fieldName":"username","required":true,"references":{"resourceName":"username","fieldName":null},"index":"UNIQUE"},{"dataType":"Hashed","fieldName":"password","required":true,"references":{"resourceName":"password","fieldName":null}}],"primitive":false,"name":"user","indexes":[],"idField":"id","resourceName":"user","modelName":"user","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"username","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"user-has-role":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"user","required":true,"references":{"resourceName":"user","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"role","required":true,"references":{"resourceName":"role","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Date Time","fieldName":"expiry date","required":false,"references":{"resourceName":"expiry date","fieldName":null}}],"primitive":false,"name":"user-has-role","indexes":[{"type":"UNIQUE","fields":["user","role"]}],"idField":"id","resourceName":"user-has-role","modelName":"user has role","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"user-has-permission":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"user","required":true,"references":{"resourceName":"user","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"permission","required":true,"references":{"resourceName":"permission","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Date Time","fieldName":"expiry date","required":false,"references":{"resourceName":"expiry date","fieldName":null}}],"primitive":false,"name":"user-has-permission","indexes":[{"type":"UNIQUE","fields":["user","permission"]}],"idField":"id","resourceName":"user-has-permission","modelName":"user has permission","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"api key":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"key","required":true,"references":{"resourceName":"key","fieldName":null},"index":"UNIQUE"},{"dataType":"Date Time","fieldName":"expiry date","required":false,"references":{"resourceName":"expiry date","fieldName":null}},{"dataType":"ForeignKey","fieldName":"is of-actor","required":true,"references":{"resourceName":"actor","fieldName":"id"}},{"dataType":"Text","fieldName":"name","required":false,"references":{"resourceName":"name","fieldName":null}},{"dataType":"Text","fieldName":"description","required":false,"references":{"resourceName":"description","fieldName":null}}],"primitive":false,"name":"api key","indexes":[],"idField":"id","resourceName":"api key","modelName":"api key","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"key","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"api key-has-role":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"api key","required":true,"references":{"resourceName":"api key","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"role","required":true,"references":{"resourceName":"role","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"api key-has-role","indexes":[{"type":"UNIQUE","fields":["api key","role"]}],"idField":"id","resourceName":"api key-has-role","modelName":"api key has role","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"api key-has-permission":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"api key","required":true,"references":{"resourceName":"api key","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"permission","required":true,"references":{"resourceName":"permission","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"api key-has-permission","indexes":[{"type":"UNIQUE","fields":["api key","permission"]}],"idField":"id","resourceName":"api key-has-permission","modelName":"api key has permission","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"permission$Auth":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Text","fieldName":"name","required":true,"references":{"resourceName":"name","fieldName":null},"index":"UNIQUE"}],"primitive":false,"name":"permission","indexes":[],"idField":"id","resourceName":"permission","modelName":"permission","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"name","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"role$Auth":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Text","fieldName":"name","required":true,"references":{"resourceName":"name","fieldName":null},"index":"UNIQUE"}],"primitive":false,"name":"role","indexes":[],"idField":"id","resourceName":"role","modelName":"role","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"name","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"role-has-permission$Auth":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"role","required":true,"references":{"resourceName":"role","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"permission","required":true,"references":{"resourceName":"permission","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"role-has-permission","indexes":[{"type":"UNIQUE","fields":["role","permission"]}],"idField":"id","resourceName":"role-has-permission","modelName":"role has permission","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"actor$Auth":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"actor","indexes":[],"idField":"id","resourceName":"actor","modelName":"actor","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"user$Auth":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"ConceptType","fieldName":"actor","required":true,"references":{"resourceName":"actor","fieldName":"id"}},{"dataType":"Short Text","fieldName":"username","required":true,"references":{"resourceName":"username","fieldName":null},"index":"UNIQUE"},{"dataType":"Hashed","fieldName":"password","required":true,"references":{"resourceName":"password","fieldName":null}}],"primitive":false,"name":"user","indexes":[],"idField":"id","resourceName":"user","modelName":"user","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"username","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"user-has-role$Auth":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"user","required":true,"references":{"resourceName":"user","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"role","required":true,"references":{"resourceName":"role","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Date Time","fieldName":"expiry date","required":false,"references":{"resourceName":"expiry date","fieldName":null}}],"primitive":false,"name":"user-has-role","indexes":[{"type":"UNIQUE","fields":["user","role"]}],"idField":"id","resourceName":"user-has-role","modelName":"user has role","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"user-has-permission$Auth":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"user","required":true,"references":{"resourceName":"user","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"permission","required":true,"references":{"resourceName":"permission","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Date Time","fieldName":"expiry date","required":false,"references":{"resourceName":"expiry date","fieldName":null}}],"primitive":false,"name":"user-has-permission","indexes":[{"type":"UNIQUE","fields":["user","permission"]}],"idField":"id","resourceName":"user-has-permission","modelName":"user has permission","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"api key$Auth":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"key","required":true,"references":{"resourceName":"key","fieldName":null},"index":"UNIQUE"},{"dataType":"Date Time","fieldName":"expiry date","required":false,"references":{"resourceName":"expiry date","fieldName":null}},{"dataType":"ForeignKey","fieldName":"is of-actor","required":true,"references":{"resourceName":"actor","fieldName":"id"}},{"dataType":"Text","fieldName":"name","required":false,"references":{"resourceName":"name","fieldName":null}},{"dataType":"Text","fieldName":"description","required":false,"references":{"resourceName":"description","fieldName":null}}],"primitive":false,"name":"api key","indexes":[],"idField":"id","resourceName":"api key","modelName":"api key","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"key","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"api key-has-role$Auth":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"api key","required":true,"references":{"resourceName":"api key","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"role","required":true,"references":{"resourceName":"role","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"api key-has-role","indexes":[{"type":"UNIQUE","fields":["api key","role"]}],"idField":"id","resourceName":"api key-has-role","modelName":"api key has role","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"api key-has-permission$Auth":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"api key","required":true,"references":{"resourceName":"api key","fieldName":"id"}},{"dataType":"ForeignKey","fieldName":"permission","required":true,"references":{"resourceName":"permission","fieldName":"id"}},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"api key-has-permission","indexes":[{"type":"UNIQUE","fields":["api key","permission"]}],"idField":"id","resourceName":"api key-has-permission","modelName":"api key has permission","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"localFields":{},"fetchProcessingFields":{},"webresourceFields":{}}},"createSchema":["DO $$\nBEGIN\n\tCREATE FUNCTION \"trigger_update_modified_at\"()\n\tRETURNS TRIGGER AS $fn$\n\tBEGIN\n\t\tNEW.\"modified at\" = NOW();\nRETURN NEW;\n\tEND;\n\t$fn$ LANGUAGE plpgsql;\nEXCEPTION WHEN duplicate_function THEN\n\tNULL;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"permission\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\t\"name\" TEXT NOT NULL UNIQUE\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'permission'\n\tAND \"trigger_name\" = 'permission_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"permission_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"permission\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"role\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\t\"name\" TEXT NOT NULL UNIQUE\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'role'\n\tAND \"trigger_name\" = 'role_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"role_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"role\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"role-has-permission\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"role\" INTEGER NOT NULL\n,\t\"permission\" INTEGER NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\tFOREIGN KEY (\"role\") REFERENCES \"role\" (\"id\")\n,\tFOREIGN KEY (\"permission\") REFERENCES \"permission\" (\"id\")\n,\tUNIQUE(\"role\", \"permission\")\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'role-has-permission'\n\tAND \"trigger_name\" = 'role-has-permission_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"role-has-permission_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"role-has-permission\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"actor\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'actor'\n\tAND \"trigger_name\" = 'actor_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"actor_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"actor\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"user\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\t\"actor\" INTEGER NOT NULL\n,\t\"username\" VARCHAR(255) NOT NULL UNIQUE\n,\t\"password\" CHAR(60) NOT NULL\n,\tFOREIGN KEY (\"actor\") REFERENCES \"actor\" (\"id\")\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'user'\n\tAND \"trigger_name\" = 'user_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"user_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"user\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"user-has-role\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"user\" INTEGER NOT NULL\n,\t\"role\" INTEGER NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\t\"expiry date\" TIMESTAMPTZ NULL\n,\tFOREIGN KEY (\"user\") REFERENCES \"user\" (\"id\")\n,\tFOREIGN KEY (\"role\") REFERENCES \"role\" (\"id\")\n,\tUNIQUE(\"user\", \"role\")\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'user-has-role'\n\tAND \"trigger_name\" = 'user-has-role_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"user-has-role_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"user-has-role\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"user-has-permission\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"user\" INTEGER NOT NULL\n,\t\"permission\" INTEGER NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\t\"expiry date\" TIMESTAMPTZ NULL\n,\tFOREIGN KEY (\"user\") REFERENCES \"user\" (\"id\")\n,\tFOREIGN KEY (\"permission\") REFERENCES \"permission\" (\"id\")\n,\tUNIQUE(\"user\", \"permission\")\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'user-has-permission'\n\tAND \"trigger_name\" = 'user-has-permission_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"user-has-permission_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"user-has-permission\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"api key\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\t\"key\" VARCHAR(255) NOT NULL UNIQUE\n,\t\"expiry date\" TIMESTAMPTZ NULL\n,\t\"is of-actor\" INTEGER NOT NULL\n,\t\"name\" TEXT NULL\n,\t\"description\" TEXT NULL\n,\tFOREIGN KEY (\"is of-actor\") REFERENCES \"actor\" (\"id\")\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'api key'\n\tAND \"trigger_name\" = 'api key_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"api key_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"api key\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"api key-has-role\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"api key\" INTEGER NOT NULL\n,\t\"role\" INTEGER NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\tFOREIGN KEY (\"api key\") REFERENCES \"api key\" (\"id\")\n,\tFOREIGN KEY (\"role\") REFERENCES \"role\" (\"id\")\n,\tUNIQUE(\"api key\", \"role\")\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'api key-has-role'\n\tAND \"trigger_name\" = 'api key-has-role_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"api key-has-role_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"api key-has-role\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"api key-has-permission\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"api key\" INTEGER NOT NULL\n,\t\"permission\" INTEGER NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\tFOREIGN KEY (\"api key\") REFERENCES \"api key\" (\"id\")\n,\tFOREIGN KEY (\"permission\") REFERENCES \"permission\" (\"id\")\n,\tUNIQUE(\"api key\", \"permission\")\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'api key-has-permission'\n\tAND \"trigger_name\" = 'api key-has-permission_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"api key-has-permission_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"api key-has-permission\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;"],"dropSchema":["DROP TABLE \"api key-has-permission\";","DROP TRIGGER \"api key-has-permission_trigger_update_modified_at\";","DROP TABLE \"api key-has-role\";","DROP TRIGGER \"api key-has-role_trigger_update_modified_at\";","DROP TABLE \"api key\";","DROP TRIGGER \"api key_trigger_update_modified_at\";","DROP TABLE \"user-has-permission\";","DROP TRIGGER \"user-has-permission_trigger_update_modified_at\";","DROP TABLE \"user-has-role\";","DROP TRIGGER \"user-has-role_trigger_update_modified_at\";","DROP TABLE \"user\";","DROP TRIGGER \"user_trigger_update_modified_at\";","DROP TABLE \"actor\";","DROP TRIGGER \"actor_trigger_update_modified_at\";","DROP TABLE \"role-has-permission\";","DROP TRIGGER \"role-has-permission_trigger_update_modified_at\";","DROP TABLE \"role\";","DROP TRIGGER \"role_trigger_update_modified_at\";","DROP TABLE \"permission\";","DROP TRIGGER \"permission_trigger_update_modified_at\";","DROP FUNCTION \"trigger_update_modified_at\"();"],"rules":[]},"{\"tables\":{\"migration\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Short Text\",\"fieldName\":\"model name\",\"required\":true,\"references\":{\"resourceName\":\"model name\",\"fieldName\":null},\"index\":\"PRIMARY KEY\"},{\"dataType\":\"JSON\",\"fieldName\":\"executed migrations\",\"required\":true,\"references\":{\"resourceName\":\"executed migrations\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"migration\",\"indexes\":[],\"idField\":\"model name\",\"resourceName\":\"migration\",\"modelName\":\"migration\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"model name\"},\"migration lock\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Short Text\",\"fieldName\":\"model name\",\"required\":true,\"references\":{\"resourceName\":\"model name\",\"fieldName\":null},\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"migration lock\",\"indexes\":[],\"idField\":\"model name\",\"resourceName\":\"migration lock\",\"modelName\":\"migration lock\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"model name\"},\"migration status\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Short Text\",\"fieldName\":\"migration key\",\"required\":true,\"references\":{\"resourceName\":\"migration key\",\"fieldName\":null},\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Date Time\",\"fieldName\":\"start time\",\"required\":false,\"references\":{\"resourceName\":\"start time\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"last run time\",\"required\":false,\"references\":{\"resourceName\":\"last run time\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"run count\",\"required\":true,\"references\":{\"resourceName\":\"run count\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"migrated row count\",\"required\":false,\"references\":{\"resourceName\":\"migrated row count\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"error count\",\"required\":false,\"references\":{\"resourceName\":\"error count\",\"fieldName\":null}},{\"dataType\":\"Boolean\",\"fieldName\":\"is backing off\",\"required\":true},{\"dataType\":\"Date Time\",\"fieldName\":\"converged time\",\"required\":false,\"references\":{\"resourceName\":\"converged time\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"migration status\",\"indexes\":[],\"idField\":\"migration key\",\"resourceName\":\"migration status\",\"modelName\":\"migration status\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"migration key\"},\"migration$migrations\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Short Text\",\"fieldName\":\"model name\",\"required\":true,\"references\":{\"resourceName\":\"model name\",\"fieldName\":null},\"index\":\"PRIMARY KEY\"},{\"dataType\":\"JSON\",\"fieldName\":\"executed migrations\",\"required\":true,\"references\":{\"resourceName\":\"executed migrations\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"migration\",\"indexes\":[],\"idField\":\"model name\",\"resourceName\":\"migration\",\"modelName\":\"migration\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"model name\"},\"migration lock$migrations\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Short Text\",\"fieldName\":\"model name\",\"required\":true,\"references\":{\"resourceName\":\"model name\",\"fieldName\":null},\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"migration lock\",\"indexes\":[],\"idField\":\"model name\",\"resourceName\":\"migration lock\",\"modelName\":\"migration lock\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"model name\"},\"migration status$migrations\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Short Text\",\"fieldName\":\"migration key\",\"required\":true,\"references\":{\"resourceName\":\"migration key\",\"fieldName\":null},\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Date Time\",\"fieldName\":\"start time\",\"required\":false,\"references\":{\"resourceName\":\"start time\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"last run time\",\"required\":false,\"references\":{\"resourceName\":\"last run time\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"run count\",\"required\":true,\"references\":{\"resourceName\":\"run count\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"migrated row count\",\"required\":false,\"references\":{\"resourceName\":\"migrated row count\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"error count\",\"required\":false,\"references\":{\"resourceName\":\"error count\",\"fieldName\":null}},{\"dataType\":\"Boolean\",\"fieldName\":\"is backing off\",\"required\":true},{\"dataType\":\"Date Time\",\"fieldName\":\"converged time\",\"required\":false,\"references\":{\"resourceName\":\"converged time\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"migration status\",\"indexes\":[],\"idField\":\"migration key\",\"resourceName\":\"migration status\",\"modelName\":\"migration status\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"migration key\"}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"model name\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"executed migrations\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"lock time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"migration\":{\"has\":{\"model name\":{\"$\":[\"model name\"]},\"executed migrations\":{\"$\":[\"executed migrations\"]}},\"migration\":{\"has\":{\"model name\":{\"$\":[\"model name\"]},\"executed migrations\":{\"$\":[\"executed migrations\"]}}},\"model name\":{\"$\":[\"model name\"]},\"executed migrations\":{\"$\":[\"executed migrations\"]}},\"migration lock\":{\"has\":{\"model name\":{\"$\":[\"model name\"]}},\"migration lock\":{\"has\":{\"model name\":{\"$\":[\"model name\"]}}},\"model name\":{\"$\":[\"model name\"]}},\"migration key\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"start time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"last run time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"run count\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"migrated row count\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"error count\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"converged time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"migration status\":{\"has\":{\"migration key\":{\"$\":[\"migration key\"]},\"start time\":{\"$\":[\"start time\"]},\"last run time\":{\"$\":[\"last run time\"]},\"run count\":{\"$\":[\"run count\"]},\"migrated row count\":{\"$\":[\"migrated row count\"]},\"error count\":{\"$\":[\"error count\"]},\"converged time\":{\"$\":[\"converged time\"]}},\"migration status\":{\"has\":{\"migration key\":{\"$\":[\"migration key\"]},\"start time\":{\"$\":[\"start time\"]},\"last run time\":{\"$\":[\"last run time\"]},\"run count\":{\"$\":[\"run count\"]},\"migrated row count\":{\"$\":[\"migrated row count\"]},\"error count\":{\"$\":[\"error count\"]},\"converged time\":{\"$\":[\"converged time\"]}}},\"migration key\":{\"$\":[\"migration key\"]},\"start time\":{\"$\":[\"start time\"]},\"last run time\":{\"$\":[\"last run time\"]},\"run count\":{\"$\":[\"run count\"]},\"migrated row count\":{\"$\":[\"migrated row count\"]},\"error count\":{\"$\":[\"error count\"]},\"is backing off\":{\"$\":[\"is backing off\"]},\"converged time\":{\"$\":[\"converged time\"]}}},\"rules\":[],\"synonyms\":{},\"lfInfo\":{\"rules\":{}}}":{"synonyms":{},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"model name":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"executed migrations":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"lock time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"migration":{"has":{"model name":{"$":["model name"]},"executed migrations":{"$":["executed migrations"]}},"migration":{"has":{"model name":{"$":["model name"]},"executed migrations":{"$":["executed migrations"]}}},"model name":{"$":["model name"]},"executed migrations":{"$":["executed migrations"]}},"migration lock":{"has":{"model name":{"$":["model name"]}},"migration lock":{"has":{"model name":{"$":["model name"]}}},"model name":{"$":["model name"]}},"migration key":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"start time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"last run time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"run count":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"migrated row count":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"error count":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"converged time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"migration status":{"has":{"migration key":{"$":["migration key"]},"start time":{"$":["start time"]},"last run time":{"$":["last run time"]},"run count":{"$":["run count"]},"migrated row count":{"$":["migrated row count"]},"error count":{"$":["error count"]},"converged time":{"$":["converged time"]}},"migration status":{"has":{"migration key":{"$":["migration key"]},"start time":{"$":["start time"]},"last run time":{"$":["last run time"]},"run count":{"$":["run count"]},"migrated row count":{"$":["migrated row count"]},"error count":{"$":["error count"]},"converged time":{"$":["converged time"]}}},"migration key":{"$":["migration key"]},"start time":{"$":["start time"]},"last run time":{"$":["last run time"]},"run count":{"$":["run count"]},"migrated row count":{"$":["migrated row count"]},"error count":{"$":["error count"]},"is backing off":{"$":["is backing off"]},"converged time":{"$":["converged time"]}}},"tables":{"migration":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Short Text","fieldName":"model name","required":true,"references":{"resourceName":"model name","fieldName":null},"index":"PRIMARY KEY"},{"dataType":"JSON","fieldName":"executed migrations","required":true,"references":{"resourceName":"executed migrations","fieldName":null}}],"primitive":false,"name":"migration","indexes":[],"idField":"model name","resourceName":"migration","modelName":"migration","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"model name","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"migration lock":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Short Text","fieldName":"model name","required":true,"references":{"resourceName":"model name","fieldName":null},"index":"PRIMARY KEY"}],"primitive":false,"name":"migration lock","indexes":[],"idField":"model name","resourceName":"migration lock","modelName":"migration lock","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"model name","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"migration status":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Short Text","fieldName":"migration key","required":true,"references":{"resourceName":"migration key","fieldName":null},"index":"PRIMARY KEY"},{"dataType":"Date Time","fieldName":"start time","required":false,"references":{"resourceName":"start time","fieldName":null}},{"dataType":"Date Time","fieldName":"last run time","required":false,"references":{"resourceName":"last run time","fieldName":null}},{"dataType":"Integer","fieldName":"run count","required":true,"references":{"resourceName":"run count","fieldName":null}},{"dataType":"Integer","fieldName":"migrated row count","required":false,"references":{"resourceName":"migrated row count","fieldName":null}},{"dataType":"Integer","fieldName":"error count","required":false,"references":{"resourceName":"error count","fieldName":null}},{"dataType":"Boolean","fieldName":"is backing off","required":true},{"dataType":"Date Time","fieldName":"converged time","required":false,"references":{"resourceName":"converged time","fieldName":null}}],"primitive":false,"name":"migration status","indexes":[],"idField":"migration key","resourceName":"migration status","modelName":"migration status","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"migration key","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"migration$migrations":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Short Text","fieldName":"model name","required":true,"references":{"resourceName":"model name","fieldName":null},"index":"PRIMARY KEY"},{"dataType":"JSON","fieldName":"executed migrations","required":true,"references":{"resourceName":"executed migrations","fieldName":null}}],"primitive":false,"name":"migration","indexes":[],"idField":"model name","resourceName":"migration","modelName":"migration","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"model name","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"migration lock$migrations":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Short Text","fieldName":"model name","required":true,"references":{"resourceName":"model name","fieldName":null},"index":"PRIMARY KEY"}],"primitive":false,"name":"migration lock","indexes":[],"idField":"model name","resourceName":"migration lock","modelName":"migration lock","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"model name","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"migration status$migrations":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Short Text","fieldName":"migration key","required":true,"references":{"resourceName":"migration key","fieldName":null},"index":"PRIMARY KEY"},{"dataType":"Date Time","fieldName":"start time","required":false,"references":{"resourceName":"start time","fieldName":null}},{"dataType":"Date Time","fieldName":"last run time","required":false,"references":{"resourceName":"last run time","fieldName":null}},{"dataType":"Integer","fieldName":"run count","required":true,"references":{"resourceName":"run count","fieldName":null}},{"dataType":"Integer","fieldName":"migrated row count","required":false,"references":{"resourceName":"migrated row count","fieldName":null}},{"dataType":"Integer","fieldName":"error count","required":false,"references":{"resourceName":"error count","fieldName":null}},{"dataType":"Boolean","fieldName":"is backing off","required":true},{"dataType":"Date Time","fieldName":"converged time","required":false,"references":{"resourceName":"converged time","fieldName":null}}],"primitive":false,"name":"migration status","indexes":[],"idField":"migration key","resourceName":"migration status","modelName":"migration status","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"migration key","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}}},"createSchema":["DO $$\nBEGIN\n\tCREATE FUNCTION \"trigger_update_modified_at\"()\n\tRETURNS TRIGGER AS $fn$\n\tBEGIN\n\t\tNEW.\"modified at\" = NOW();\nRETURN NEW;\n\tEND;\n\t$fn$ LANGUAGE plpgsql;\nEXCEPTION WHEN duplicate_function THEN\n\tNULL;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"migration\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"model name\" VARCHAR(255) NOT NULL PRIMARY KEY\n,\t\"executed migrations\" JSONB NOT NULL\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'migration'\n\tAND \"trigger_name\" = 'migration_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"migration_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"migration\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"migration lock\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"model name\" VARCHAR(255) NOT NULL PRIMARY KEY\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'migration lock'\n\tAND \"trigger_name\" = 'migration lock_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"migration lock_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"migration lock\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"migration status\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"migration key\" VARCHAR(255) NOT NULL PRIMARY KEY\n,\t\"start time\" TIMESTAMPTZ NULL\n,\t\"last run time\" TIMESTAMPTZ NULL\n,\t\"run count\" INTEGER NOT NULL\n,\t\"migrated row count\" INTEGER NULL\n,\t\"error count\" INTEGER NULL\n,\t\"is backing off\" BOOLEAN DEFAULT FALSE NOT NULL\n,\t\"converged time\" TIMESTAMPTZ NULL\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'migration status'\n\tAND \"trigger_name\" = 'migration status_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"migration status_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"migration status\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;"],"dropSchema":["DROP TABLE \"migration status\";","DROP TRIGGER \"migration status_trigger_update_modified_at\";","DROP TABLE \"migration lock\";","DROP TRIGGER \"migration lock_trigger_update_modified_at\";","DROP TABLE \"migration\";","DROP TRIGGER \"migration_trigger_update_modified_at\";","DROP FUNCTION \"trigger_update_modified_at\"();"],"rules":[]},"{\"tables\":{\"task\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Big Serial\",\"fieldName\":\"id\",\"required\":true,\"references\":{\"resourceName\":\"id\",\"fieldName\":null},\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"key\",\"required\":false,\"references\":{\"resourceName\":\"key\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"is created by-actor\",\"required\":true,\"references\":{\"resourceName\":\"actor\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"is executed by-handler\",\"required\":true,\"references\":{\"resourceName\":\"handler\",\"fieldName\":null}},{\"dataType\":\"JSON\",\"fieldName\":\"is executed with-parameter set\",\"required\":false,\"references\":{\"resourceName\":\"parameter set\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"is scheduled with-cron expression\",\"required\":false,\"references\":{\"resourceName\":\"cron expression\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"is scheduled to execute on-time\",\"required\":false,\"references\":{\"resourceName\":\"time\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"status\",\"required\":true,\"references\":{\"resourceName\":\"status\",\"fieldName\":null},\"checks\":[[\"In\",[\"Field\",\"status\"],[\"Text\",\"queued\"],[\"Text\",\"cancelled\"],[\"Text\",\"succeeded\"],[\"Text\",\"failed\"]]]},{\"dataType\":\"Date Time\",\"fieldName\":\"started on-time\",\"required\":false,\"references\":{\"resourceName\":\"time\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"ended on-time\",\"required\":false,\"references\":{\"resourceName\":\"time\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"error message\",\"required\":false,\"references\":{\"resourceName\":\"error message\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"attempt count\",\"required\":true,\"references\":{\"resourceName\":\"attempt count\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"attempt limit\",\"required\":true,\"references\":{\"resourceName\":\"attempt limit\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"task\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"task\",\"modelName\":\"task\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"},\"task$tasks\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Big Serial\",\"fieldName\":\"id\",\"required\":true,\"references\":{\"resourceName\":\"id\",\"fieldName\":null},\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"key\",\"required\":false,\"references\":{\"resourceName\":\"key\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"is created by-actor\",\"required\":true,\"references\":{\"resourceName\":\"actor\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"is executed by-handler\",\"required\":true,\"references\":{\"resourceName\":\"handler\",\"fieldName\":null}},{\"dataType\":\"JSON\",\"fieldName\":\"is executed with-parameter set\",\"required\":false,\"references\":{\"resourceName\":\"parameter set\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"is scheduled with-cron expression\",\"required\":false,\"references\":{\"resourceName\":\"cron expression\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"is scheduled to execute on-time\",\"required\":false,\"references\":{\"resourceName\":\"time\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"status\",\"required\":true,\"references\":{\"resourceName\":\"status\",\"fieldName\":null},\"checks\":[[\"In\",[\"Field\",\"status\"],[\"Text\",\"queued\"],[\"Text\",\"cancelled\"],[\"Text\",\"succeeded\"],[\"Text\",\"failed\"]]]},{\"dataType\":\"Date Time\",\"fieldName\":\"started on-time\",\"required\":false,\"references\":{\"resourceName\":\"time\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"ended on-time\",\"required\":false,\"references\":{\"resourceName\":\"time\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"error message\",\"required\":false,\"references\":{\"resourceName\":\"error message\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"attempt count\",\"required\":true,\"references\":{\"resourceName\":\"attempt count\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"attempt limit\",\"required\":true,\"references\":{\"resourceName\":\"attempt limit\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"task\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"task\",\"modelName\":\"task\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"id\":{\"Big Serial\":{\"$\":[\"Big Serial\"]},\"has\":{\"Big Serial\":{\"$\":[\"Big Serial\"]}}},\"actor\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"attempt count\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"attempt limit\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"cron expression\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"error message\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"handler\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"key\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"parameter set\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"status\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"task\":{\"has\":{\"id\":{\"$\":[\"id\"]},\"key\":{\"$\":[\"key\"]},\"status\":{\"$\":[\"status\"]},\"error message\":{\"$\":[\"error message\"]},\"attempt count\":{\"$\":[\"attempt count\"]},\"attempt limit\":{\"$\":[\"attempt limit\"]}},\"task\":{\"has\":{\"id\":{\"$\":[\"id\"]},\"key\":{\"$\":[\"key\"]},\"status\":{\"$\":[\"status\"]},\"error message\":{\"$\":[\"error message\"]},\"attempt count\":{\"$\":[\"attempt count\"]},\"attempt limit\":{\"$\":[\"attempt limit\"]}},\"is created by\":{\"actor\":{\"$\":[\"is created by-actor\"]}},\"is executed by\":{\"handler\":{\"$\":[\"is executed by-handler\"]}},\"is executed with\":{\"parameter set\":{\"$\":[\"is executed with-parameter set\"]}},\"is scheduled with\":{\"cron expression\":{\"$\":[\"is scheduled with-cron expression\"]}},\"is scheduled to execute on\":{\"time\":{\"$\":[\"is scheduled to execute on-time\"]}},\"started on\":{\"time\":{\"$\":[\"started on-time\"]}},\"ended on\":{\"time\":{\"$\":[\"ended on-time\"]}}},\"id\":{\"$\":[\"id\"]},\"key\":{\"$\":[\"key\"]},\"is created by\":{\"actor\":{\"$\":[\"is created by-actor\"]}},\"is executed by\":{\"handler\":{\"$\":[\"is executed by-handler\"]}},\"is executed with\":{\"parameter set\":{\"$\":[\"is executed with-parameter set\"]}},\"is scheduled with\":{\"cron expression\":{\"$\":[\"is scheduled with-cron expression\"]}},\"is scheduled to execute on\":{\"time\":{\"$\":[\"is scheduled to execute on-time\"]}},\"status\":{\"$\":[\"status\"]},\"started on\":{\"time\":{\"$\":[\"started on-time\"]}},\"ended on\":{\"time\":{\"$\":[\"ended on-time\"]}},\"error message\":{\"$\":[\"error message\"]},\"attempt count\":{\"$\":[\"attempt count\"]},\"attempt limit\":{\"$\":[\"attempt limit\"]}}},\"rules\":[[\"Rule\",[\"Body\",[\"Equals\",[\"SelectQuery\",[\"Select\",[[\"Count\",\"*\"]]],[\"From\",[\"Alias\",[\"Table\",\"task\"],\"task.0\"]],[\"Where\",[\"Not\",[\"And\",[\"LessThanOrEqual\",[\"Integer\",1],[\"ReferencedField\",\"task.0\",\"attempt limit\"]],[\"Exists\",[\"ReferencedField\",\"task.0\",\"attempt limit\"]]]]]],[\"Number\",0]]],[\"StructuredEnglish\",\"It is necessary that each task has an attempt limit that is greater than or equal to 1\"]],[\"Rule\",[\"Body\",[\"NotExists\",[\"SelectQuery\",[\"Select\",[[\"ReferencedField\",\"task.1\",\"is executed by-handler\"]]],[\"From\",[\"Alias\",[\"Table\",\"task\"],\"task.1\"]],[\"Where\",[\"And\",[\"Exists\",[\"ReferencedField\",\"task.1\",\"is scheduled with-cron expression\"]],[\"Equals\",[\"Text\",\"queued\"],[\"ReferencedField\",\"task.1\",\"status\"]],[\"Exists\",[\"ReferencedField\",\"task.1\",\"status\"]],[\"GreaterThanOrEqual\",[\"SelectQuery\",[\"Select\",[[\"Count\",\"*\"]]],[\"From\",[\"Alias\",[\"Table\",\"task\"],\"task.4\"]],[\"Where\",[\"And\",[\"Exists\",[\"ReferencedField\",\"task.4\",\"is scheduled with-cron expression\"]],[\"Equals\",[\"Text\",\"queued\"],[\"ReferencedField\",\"task.4\",\"status\"]],[\"Exists\",[\"ReferencedField\",\"task.4\",\"status\"]],[\"Equals\",[\"ReferencedField\",\"task.4\",\"is executed by-handler\"],[\"ReferencedField\",\"task.1\",\"is executed by-handler\"]]]]],[\"Number\",2]]]]]]],[\"StructuredEnglish\",\"It is necessary that each handler that executes a task that is scheduled with a cron expression and has a status that is equal to \\\"queued\\\", executes at most one task that is scheduled with a cron expression and has a status that is equal to \\\"queued\\\".\"]]],\"synonyms\":{},\"lfInfo\":{\"rules\":{\"It is necessary that each task has an attempt limit that is greater than or equal to 1\":{\"root\":{\"table\":\"task\",\"alias\":\"task.0\"}},\"It is necessary that each handler that executes a task that is scheduled with a cron expression and has a status that is equal to \\\"queued\\\", executes at most one task that is scheduled with a cron expression and has a status that is equal to \\\"queued\\\".\":{\"root\":{\"table\":\"task\",\"alias\":\"task.1\"}}}}}":{"synonyms":{},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"id":{"Big Serial":{"$":["Big Serial"]},"has":{"Big Serial":{"$":["Big Serial"]}}},"actor":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"attempt count":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"attempt limit":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"cron expression":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"error message":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"handler":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"key":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"parameter set":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"status":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"task":{"has":{"id":{"$":["id"]},"key":{"$":["key"]},"status":{"$":["status"]},"error message":{"$":["error message"]},"attempt count":{"$":["attempt count"]},"attempt limit":{"$":["attempt limit"]}},"task":{"has":{"id":{"$":["id"]},"key":{"$":["key"]},"status":{"$":["status"]},"error message":{"$":["error message"]},"attempt count":{"$":["attempt count"]},"attempt limit":{"$":["attempt limit"]}},"is created by":{"actor":{"$":["is created by-actor"]}},"is executed by":{"handler":{"$":["is executed by-handler"]}},"is executed with":{"parameter set":{"$":["is executed with-parameter set"]}},"is scheduled with":{"cron expression":{"$":["is scheduled with-cron expression"]}},"is scheduled to execute on":{"time":{"$":["is scheduled to execute on-time"]}},"started on":{"time":{"$":["started on-time"]}},"ended on":{"time":{"$":["ended on-time"]}}},"id":{"$":["id"]},"key":{"$":["key"]},"is created by":{"actor":{"$":["is created by-actor"]}},"is executed by":{"handler":{"$":["is executed by-handler"]}},"is executed with":{"parameter set":{"$":["is executed with-parameter set"]}},"is scheduled with":{"cron expression":{"$":["is scheduled with-cron expression"]}},"is scheduled to execute on":{"time":{"$":["is scheduled to execute on-time"]}},"status":{"$":["status"]},"started on":{"time":{"$":["started on-time"]}},"ended on":{"time":{"$":["ended on-time"]}},"error message":{"$":["error message"]},"attempt count":{"$":["attempt count"]},"attempt limit":{"$":["attempt limit"]}}},"tables":{"task":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Big Serial","fieldName":"id","required":true,"references":{"resourceName":"id","fieldName":null},"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"key","required":false,"references":{"resourceName":"key","fieldName":null}},{"dataType":"Integer","fieldName":"is created by-actor","required":true,"references":{"resourceName":"actor","fieldName":null}},{"dataType":"Short Text","fieldName":"is executed by-handler","required":true,"references":{"resourceName":"handler","fieldName":null}},{"dataType":"JSON","fieldName":"is executed with-parameter set","required":false,"references":{"resourceName":"parameter set","fieldName":null}},{"dataType":"Short Text","fieldName":"is scheduled with-cron expression","required":false,"references":{"resourceName":"cron expression","fieldName":null}},{"dataType":"Date Time","fieldName":"is scheduled to execute on-time","required":false,"references":{"resourceName":"time","fieldName":null}},{"dataType":"Short Text","fieldName":"status","required":true,"references":{"resourceName":"status","fieldName":null},"checks":[["In",["Field","status"],["Text","queued"],["Text","cancelled"],["Text","succeeded"],["Text","failed"]]]},{"dataType":"Date Time","fieldName":"started on-time","required":false,"references":{"resourceName":"time","fieldName":null}},{"dataType":"Date Time","fieldName":"ended on-time","required":false,"references":{"resourceName":"time","fieldName":null}},{"dataType":"Short Text","fieldName":"error message","required":false,"references":{"resourceName":"error message","fieldName":null}},{"dataType":"Integer","fieldName":"attempt count","required":true,"references":{"resourceName":"attempt count","fieldName":null}},{"dataType":"Integer","fieldName":"attempt limit","required":true,"references":{"resourceName":"attempt limit","fieldName":null}}],"primitive":false,"name":"task","indexes":[],"idField":"id","resourceName":"task","modelName":"task","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"task$tasks":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Big Serial","fieldName":"id","required":true,"references":{"resourceName":"id","fieldName":null},"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"key","required":false,"references":{"resourceName":"key","fieldName":null}},{"dataType":"Integer","fieldName":"is created by-actor","required":true,"references":{"resourceName":"actor","fieldName":null}},{"dataType":"Short Text","fieldName":"is executed by-handler","required":true,"references":{"resourceName":"handler","fieldName":null}},{"dataType":"JSON","fieldName":"is executed with-parameter set","required":false,"references":{"resourceName":"parameter set","fieldName":null}},{"dataType":"Short Text","fieldName":"is scheduled with-cron expression","required":false,"references":{"resourceName":"cron expression","fieldName":null}},{"dataType":"Date Time","fieldName":"is scheduled to execute on-time","required":false,"references":{"resourceName":"time","fieldName":null}},{"dataType":"Short Text","fieldName":"status","required":true,"references":{"resourceName":"status","fieldName":null},"checks":[["In",["Field","status"],["Text","queued"],["Text","cancelled"],["Text","succeeded"],["Text","failed"]]]},{"dataType":"Date Time","fieldName":"started on-time","required":false,"references":{"resourceName":"time","fieldName":null}},{"dataType":"Date Time","fieldName":"ended on-time","required":false,"references":{"resourceName":"time","fieldName":null}},{"dataType":"Short Text","fieldName":"error message","required":false,"references":{"resourceName":"error message","fieldName":null}},{"dataType":"Integer","fieldName":"attempt count","required":true,"references":{"resourceName":"attempt count","fieldName":null}},{"dataType":"Integer","fieldName":"attempt limit","required":true,"references":{"resourceName":"attempt limit","fieldName":null}}],"primitive":false,"name":"task","indexes":[],"idField":"id","resourceName":"task","modelName":"task","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}}},"createSchema":["DO $$\nBEGIN\n\tCREATE FUNCTION \"trigger_update_modified_at\"()\n\tRETURNS TRIGGER AS $fn$\n\tBEGIN\n\t\tNEW.\"modified at\" = NOW();\nRETURN NEW;\n\tEND;\n\t$fn$ LANGUAGE plpgsql;\nEXCEPTION WHEN duplicate_function THEN\n\tNULL;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"task\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"id\" BIGSERIAL NOT NULL PRIMARY KEY\n,\t\"key\" VARCHAR(255) NULL\n,\t\"is created by-actor\" INTEGER NOT NULL\n,\t\"is executed by-handler\" VARCHAR(255) NOT NULL\n,\t\"is executed with-parameter set\" JSONB NULL\n,\t\"is scheduled with-cron expression\" VARCHAR(255) NULL\n,\t\"is scheduled to execute on-time\" TIMESTAMPTZ NULL\n,\t\"status\" VARCHAR(255) NOT NULL CHECK (\"status\" IN ('queued', 'cancelled', 'succeeded', 'failed'))\n,\t\"started on-time\" TIMESTAMPTZ NULL\n,\t\"ended on-time\" TIMESTAMPTZ NULL\n,\t\"error message\" VARCHAR(255) NULL\n,\t\"attempt count\" INTEGER NOT NULL\n,\t\"attempt limit\" INTEGER NOT NULL\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'task'\n\tAND \"trigger_name\" = 'task_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"task_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"task\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;"],"dropSchema":["DROP TABLE \"task\";","DROP TRIGGER \"task_trigger_update_modified_at\";","DROP FUNCTION \"trigger_update_modified_at\"();"],"rules":[{"structuredEnglish":"It is necessary that each task has an attempt limit that is greater than or equal to 1","sql":"SELECT (\n\tSELECT COUNT(*)\n\tFROM \"task\" AS \"task.0\"\n\tWHERE NOT (\n\t\t1 <= \"task.0\".\"attempt limit\"\n\t\tAND \"task.0\".\"attempt limit\" IS NOT NULL\n\t)\n\tAND ($1 = '{}'\n\tOR \"task.0\".\"id\" = ANY(CAST($1 AS INTEGER[])))\n) = 0 AS \"result\";","bindings":[["Bind","task"]],"referencedFields":{"task":["attempt limit","id"]},"ruleReferencedFields":{"task":{"create":["attempt limit","id"],"update":["attempt limit","id"],"delete":[]}}},{"structuredEnglish":"It is necessary that each handler that executes a task that is scheduled with a cron expression and has a status that is equal to \"queued\", executes at most one task that is scheduled with a cron expression and has a status that is equal to \"queued\".","sql":"SELECT NOT EXISTS (\n\tSELECT \"task.1\".\"is executed by-handler\"\n\tFROM \"task\" AS \"task.1\"\n\tWHERE \"task.1\".\"is scheduled with-cron expression\" IS NOT NULL\n\tAND $1 = \"task.1\".\"status\"\n\tAND \"task.1\".\"status\" IS NOT NULL\n\tAND (\n\t\tSELECT COUNT(*)\n\t\tFROM \"task\" AS \"task.4\"\n\t\tWHERE \"task.4\".\"is scheduled with-cron expression\" IS NOT NULL\n\t\tAND $2 = \"task.4\".\"status\"\n\t\tAND \"task.4\".\"status\" IS NOT NULL\n\t\tAND \"task.4\".\"is executed by-handler\" = \"task.1\".\"is executed by-handler\"\n\t) >= 2\n) AS \"result\";","bindings":[["Text","queued"],["Text","queued"]],"referencedFields":{"task":["is executed by-handler","is scheduled with-cron expression","status",""]},"ruleReferencedFields":{"task":{"create":["is executed by-handler","is scheduled with-cron expression","status",""],"update":["is executed by-handler","is scheduled with-cron expression","status",""],"delete":["","is scheduled with-cron expression","status","is executed by-handler"]}}}]},"{\"tables\":{\"multipart upload\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"uuid\",\"required\":true,\"references\":{\"resourceName\":\"uuid\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"Short Text\",\"fieldName\":\"resource name\",\"required\":true,\"references\":{\"resourceName\":\"resource name\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"field name\",\"required\":true,\"references\":{\"resourceName\":\"field name\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"resource id\",\"required\":true,\"references\":{\"resourceName\":\"resource id\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"upload id\",\"required\":true,\"references\":{\"resourceName\":\"upload id\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"file key\",\"required\":true,\"references\":{\"resourceName\":\"file key\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"status\",\"required\":true,\"references\":{\"resourceName\":\"status\",\"fieldName\":null},\"checks\":[[\"In\",[\"Field\",\"status\"],[\"Text\",\"pending\"],[\"Text\",\"completed\"],[\"Text\",\"cancelled\"]]]},{\"dataType\":\"Short Text\",\"fieldName\":\"filename\",\"required\":true,\"references\":{\"resourceName\":\"filename\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"content type\",\"required\":true,\"references\":{\"resourceName\":\"content type\",\"fieldName\":null}},{\"dataType\":\"Big Integer\",\"fieldName\":\"size\",\"required\":true,\"references\":{\"resourceName\":\"size\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"chunk size\",\"required\":true,\"references\":{\"resourceName\":\"chunk size\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"expiry date\",\"required\":true,\"references\":{\"resourceName\":\"expiry date\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"is created by-actor\",\"required\":false,\"references\":{\"resourceName\":\"actor\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"multipart upload\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"multipart upload\",\"modelName\":\"multipart upload\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"},\"multipart upload$webresource\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"uuid\",\"required\":true,\"references\":{\"resourceName\":\"uuid\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"Short Text\",\"fieldName\":\"resource name\",\"required\":true,\"references\":{\"resourceName\":\"resource name\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"field name\",\"required\":true,\"references\":{\"resourceName\":\"field name\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"resource id\",\"required\":true,\"references\":{\"resourceName\":\"resource id\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"upload id\",\"required\":true,\"references\":{\"resourceName\":\"upload id\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"file key\",\"required\":true,\"references\":{\"resourceName\":\"file key\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"status\",\"required\":true,\"references\":{\"resourceName\":\"status\",\"fieldName\":null},\"checks\":[[\"In\",[\"Field\",\"status\"],[\"Text\",\"pending\"],[\"Text\",\"completed\"],[\"Text\",\"cancelled\"]]]},{\"dataType\":\"Short Text\",\"fieldName\":\"filename\",\"required\":true,\"references\":{\"resourceName\":\"filename\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"content type\",\"required\":true,\"references\":{\"resourceName\":\"content type\",\"fieldName\":null}},{\"dataType\":\"Big Integer\",\"fieldName\":\"size\",\"required\":true,\"references\":{\"resourceName\":\"size\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"chunk size\",\"required\":true,\"references\":{\"resourceName\":\"chunk size\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"expiry date\",\"required\":true,\"references\":{\"resourceName\":\"expiry date\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"is created by-actor\",\"required\":false,\"references\":{\"resourceName\":\"actor\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"multipart upload\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"multipart upload\",\"modelName\":\"multipart upload\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"actor\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"expiry date\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"uuid\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"resource name\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"field name\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"resource id\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"upload id\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"file key\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"status\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"content type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"size\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"chunk size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"valid until date\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"multipart upload\":{\"has\":{\"uuid\":{\"$\":[\"uuid\"]},\"resource name\":{\"$\":[\"resource name\"]},\"field name\":{\"$\":[\"field name\"]},\"resource id\":{\"$\":[\"resource id\"]},\"upload id\":{\"$\":[\"upload id\"]},\"file key\":{\"$\":[\"file key\"]},\"status\":{\"$\":[\"status\"]},\"filename\":{\"$\":[\"filename\"]},\"content type\":{\"$\":[\"content type\"]},\"size\":{\"$\":[\"size\"]},\"chunk size\":{\"$\":[\"chunk size\"]},\"expiry date\":{\"$\":[\"expiry date\"]}},\"multipart upload\":{\"has\":{\"uuid\":{\"$\":[\"uuid\"]},\"resource name\":{\"$\":[\"resource name\"]},\"field name\":{\"$\":[\"field name\"]},\"resource id\":{\"$\":[\"resource id\"]},\"upload id\":{\"$\":[\"upload id\"]},\"file key\":{\"$\":[\"file key\"]},\"status\":{\"$\":[\"status\"]},\"filename\":{\"$\":[\"filename\"]},\"content type\":{\"$\":[\"content type\"]},\"size\":{\"$\":[\"size\"]},\"chunk size\":{\"$\":[\"chunk size\"]},\"expiry date\":{\"$\":[\"expiry date\"]}},\"is created by\":{\"actor\":{\"$\":[\"is created by-actor\"]}}},\"uuid\":{\"$\":[\"uuid\"]},\"resource name\":{\"$\":[\"resource name\"]},\"field name\":{\"$\":[\"field name\"]},\"resource id\":{\"$\":[\"resource id\"]},\"upload id\":{\"$\":[\"upload id\"]},\"file key\":{\"$\":[\"file key\"]},\"status\":{\"$\":[\"status\"]},\"filename\":{\"$\":[\"filename\"]},\"content type\":{\"$\":[\"content type\"]},\"size\":{\"$\":[\"size\"]},\"chunk size\":{\"$\":[\"chunk size\"]},\"expiry date\":{\"$\":[\"expiry date\"]},\"is created by\":{\"actor\":{\"$\":[\"is created by-actor\"]}}}},\"rules\":[],\"synonyms\":{},\"lfInfo\":{\"rules\":{}}}":{"synonyms":{},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"actor":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"expiry date":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"uuid":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"resource name":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"field name":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"resource id":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"upload id":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"file key":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"status":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"content type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"size":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"chunk size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"valid until date":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"multipart upload":{"has":{"uuid":{"$":["uuid"]},"resource name":{"$":["resource name"]},"field name":{"$":["field name"]},"resource id":{"$":["resource id"]},"upload id":{"$":["upload id"]},"file key":{"$":["file key"]},"status":{"$":["status"]},"filename":{"$":["filename"]},"content type":{"$":["content type"]},"size":{"$":["size"]},"chunk size":{"$":["chunk size"]},"expiry date":{"$":["expiry date"]}},"multipart upload":{"has":{"uuid":{"$":["uuid"]},"resource name":{"$":["resource name"]},"field name":{"$":["field name"]},"resource id":{"$":["resource id"]},"upload id":{"$":["upload id"]},"file key":{"$":["file key"]},"status":{"$":["status"]},"filename":{"$":["filename"]},"content type":{"$":["content type"]},"size":{"$":["size"]},"chunk size":{"$":["chunk size"]},"expiry date":{"$":["expiry date"]}},"is created by":{"actor":{"$":["is created by-actor"]}}},"uuid":{"$":["uuid"]},"resource name":{"$":["resource name"]},"field name":{"$":["field name"]},"resource id":{"$":["resource id"]},"upload id":{"$":["upload id"]},"file key":{"$":["file key"]},"status":{"$":["status"]},"filename":{"$":["filename"]},"content type":{"$":["content type"]},"size":{"$":["size"]},"chunk size":{"$":["chunk size"]},"expiry date":{"$":["expiry date"]},"is created by":{"actor":{"$":["is created by-actor"]}}}},"tables":{"multipart upload":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"uuid","required":true,"references":{"resourceName":"uuid","fieldName":null},"index":"UNIQUE"},{"dataType":"Short Text","fieldName":"resource name","required":true,"references":{"resourceName":"resource name","fieldName":null}},{"dataType":"Short Text","fieldName":"field name","required":true,"references":{"resourceName":"field name","fieldName":null}},{"dataType":"Integer","fieldName":"resource id","required":true,"references":{"resourceName":"resource id","fieldName":null}},{"dataType":"Short Text","fieldName":"upload id","required":true,"references":{"resourceName":"upload id","fieldName":null}},{"dataType":"Short Text","fieldName":"file key","required":true,"references":{"resourceName":"file key","fieldName":null}},{"dataType":"Short Text","fieldName":"status","required":true,"references":{"resourceName":"status","fieldName":null},"checks":[["In",["Field","status"],["Text","pending"],["Text","completed"],["Text","cancelled"]]]},{"dataType":"Short Text","fieldName":"filename","required":true,"references":{"resourceName":"filename","fieldName":null}},{"dataType":"Short Text","fieldName":"content type","required":true,"references":{"resourceName":"content type","fieldName":null}},{"dataType":"Big Integer","fieldName":"size","required":true,"references":{"resourceName":"size","fieldName":null}},{"dataType":"Integer","fieldName":"chunk size","required":true,"references":{"resourceName":"chunk size","fieldName":null}},{"dataType":"Date Time","fieldName":"expiry date","required":true,"references":{"resourceName":"expiry date","fieldName":null}},{"dataType":"Integer","fieldName":"is created by-actor","required":false,"references":{"resourceName":"actor","fieldName":null}}],"primitive":false,"name":"multipart upload","indexes":[],"idField":"id","resourceName":"multipart upload","modelName":"multipart upload","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"multipart upload$webresource":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"uuid","required":true,"references":{"resourceName":"uuid","fieldName":null},"index":"UNIQUE"},{"dataType":"Short Text","fieldName":"resource name","required":true,"references":{"resourceName":"resource name","fieldName":null}},{"dataType":"Short Text","fieldName":"field name","required":true,"references":{"resourceName":"field name","fieldName":null}},{"dataType":"Integer","fieldName":"resource id","required":true,"references":{"resourceName":"resource id","fieldName":null}},{"dataType":"Short Text","fieldName":"upload id","required":true,"references":{"resourceName":"upload id","fieldName":null}},{"dataType":"Short Text","fieldName":"file key","required":true,"references":{"resourceName":"file key","fieldName":null}},{"dataType":"Short Text","fieldName":"status","required":true,"references":{"resourceName":"status","fieldName":null},"checks":[["In",["Field","status"],["Text","pending"],["Text","completed"],["Text","cancelled"]]]},{"dataType":"Short Text","fieldName":"filename","required":true,"references":{"resourceName":"filename","fieldName":null}},{"dataType":"Short Text","fieldName":"content type","required":true,"references":{"resourceName":"content type","fieldName":null}},{"dataType":"Big Integer","fieldName":"size","required":true,"references":{"resourceName":"size","fieldName":null}},{"dataType":"Integer","fieldName":"chunk size","required":true,"references":{"resourceName":"chunk size","fieldName":null}},{"dataType":"Date Time","fieldName":"expiry date","required":true,"references":{"resourceName":"expiry date","fieldName":null}},{"dataType":"Integer","fieldName":"is created by-actor","required":false,"references":{"resourceName":"actor","fieldName":null}}],"primitive":false,"name":"multipart upload","indexes":[],"idField":"id","resourceName":"multipart upload","modelName":"multipart upload","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}}},"createSchema":["DO $$\nBEGIN\n\tCREATE FUNCTION \"trigger_update_modified_at\"()\n\tRETURNS TRIGGER AS $fn$\n\tBEGIN\n\t\tNEW.\"modified at\" = NOW();\nRETURN NEW;\n\tEND;\n\t$fn$ LANGUAGE plpgsql;\nEXCEPTION WHEN duplicate_function THEN\n\tNULL;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"multipart upload\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\t\"uuid\" VARCHAR(255) NOT NULL UNIQUE\n,\t\"resource name\" VARCHAR(255) NOT NULL\n,\t\"field name\" VARCHAR(255) NOT NULL\n,\t\"resource id\" INTEGER NOT NULL\n,\t\"upload id\" VARCHAR(255) NOT NULL\n,\t\"file key\" VARCHAR(255) NOT NULL\n,\t\"status\" VARCHAR(255) NOT NULL CHECK (\"status\" IN ('pending', 'completed', 'cancelled'))\n,\t\"filename\" VARCHAR(255) NOT NULL\n,\t\"content type\" VARCHAR(255) NOT NULL\n,\t\"size\" BIGINT NOT NULL\n,\t\"chunk size\" INTEGER NOT NULL\n,\t\"expiry date\" TIMESTAMPTZ NOT NULL\n,\t\"is created by-actor\" INTEGER NULL\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'multipart upload'\n\tAND \"trigger_name\" = 'multipart upload_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"multipart upload_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"multipart upload\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;"],"dropSchema":["DROP TABLE \"multipart upload\";","DROP TRIGGER \"multipart upload_trigger_update_modified_at\";","DROP FUNCTION \"trigger_update_modified_at\"();"],"rules":[]},"{\"tables\":{\"device\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"name\",\"required\":false,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"Text\",\"fieldName\":\"note\",\"required\":false,\"references\":{\"resourceName\":\"note\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"type\",\"required\":true,\"references\":{\"resourceName\":\"type\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"device\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"device\",\"modelName\":\"device\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"},\"deviceb\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"name\",\"required\":false,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"Text\",\"fieldName\":\"note\",\"required\":false,\"references\":{\"resourceName\":\"note\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"type\",\"required\":true,\"references\":{\"resourceName\":\"type\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"deviceb\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"deviceb\",\"modelName\":\"deviceb\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"},\"device$example\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"name\",\"required\":false,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"Text\",\"fieldName\":\"note\",\"required\":false,\"references\":{\"resourceName\":\"note\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"type\",\"required\":true,\"references\":{\"resourceName\":\"type\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"device\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"device\",\"modelName\":\"device\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"},\"deviceb$example\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"name\",\"required\":false,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"Text\",\"fieldName\":\"note\",\"required\":false,\"references\":{\"resourceName\":\"note\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"type\",\"required\":true,\"references\":{\"resourceName\":\"type\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"deviceb\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"deviceb\",\"modelName\":\"deviceb\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"name\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"note\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"device\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"type\":{\"$\":[\"type\"]}},\"device\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"type\":{\"$\":[\"type\"]}}},\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"type\":{\"$\":[\"type\"]}},\"deviceb\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"type\":{\"$\":[\"type\"]}},\"deviceb\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"type\":{\"$\":[\"type\"]}}},\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"type\":{\"$\":[\"type\"]}}},\"rules\":[],\"synonyms\":{},\"lfInfo\":{\"rules\":{}}}":{"synonyms":{},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"name":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"note":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"device":{"has":{"name":{"$":["name"]},"note":{"$":["note"]},"type":{"$":["type"]}},"device":{"has":{"name":{"$":["name"]},"note":{"$":["note"]},"type":{"$":["type"]}}},"name":{"$":["name"]},"note":{"$":["note"]},"type":{"$":["type"]}},"deviceb":{"has":{"name":{"$":["name"]},"note":{"$":["note"]},"type":{"$":["type"]}},"deviceb":{"has":{"name":{"$":["name"]},"note":{"$":["note"]},"type":{"$":["type"]}}},"name":{"$":["name"]},"note":{"$":["note"]},"type":{"$":["type"]}}},"tables":{"device":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"name","required":false,"references":{"resourceName":"name","fieldName":null}},{"dataType":"Text","fieldName":"note","required":false,"references":{"resourceName":"note","fieldName":null}},{"dataType":"Short Text","fieldName":"type","required":true,"references":{"resourceName":"type","fieldName":null}}],"primitive":false,"name":"device","indexes":[],"idField":"id","resourceName":"device","modelName":"device","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"deviceb":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"name","required":false,"references":{"resourceName":"name","fieldName":null}},{"dataType":"Text","fieldName":"note","required":false,"references":{"resourceName":"note","fieldName":null}},{"dataType":"Short Text","fieldName":"type","required":true,"references":{"resourceName":"type","fieldName":null}}],"primitive":false,"name":"deviceb","indexes":[],"idField":"id","resourceName":"deviceb","modelName":"deviceb","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"device$example":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"name","required":false,"references":{"resourceName":"name","fieldName":null}},{"dataType":"Text","fieldName":"note","required":false,"references":{"resourceName":"note","fieldName":null}},{"dataType":"Short Text","fieldName":"type","required":true,"references":{"resourceName":"type","fieldName":null}}],"primitive":false,"name":"device","indexes":[],"idField":"id","resourceName":"device","modelName":"device","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"deviceb$example":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"name","required":false,"references":{"resourceName":"name","fieldName":null}},{"dataType":"Text","fieldName":"note","required":false,"references":{"resourceName":"note","fieldName":null}},{"dataType":"Short Text","fieldName":"type","required":true,"references":{"resourceName":"type","fieldName":null}}],"primitive":false,"name":"deviceb","indexes":[],"idField":"id","resourceName":"deviceb","modelName":"deviceb","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}}},"createSchema":["DO $$\nBEGIN\n\tCREATE FUNCTION \"trigger_update_modified_at\"()\n\tRETURNS TRIGGER AS $fn$\n\tBEGIN\n\t\tNEW.\"modified at\" = NOW();\nRETURN NEW;\n\tEND;\n\t$fn$ LANGUAGE plpgsql;\nEXCEPTION WHEN duplicate_function THEN\n\tNULL;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"device\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\t\"name\" VARCHAR(255) NULL\n,\t\"note\" TEXT NULL\n,\t\"type\" VARCHAR(255) NOT NULL\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'device'\n\tAND \"trigger_name\" = 'device_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"device_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"device\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"deviceb\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\t\"name\" VARCHAR(255) NULL\n,\t\"note\" TEXT NULL\n,\t\"type\" VARCHAR(255) NOT NULL\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'deviceb'\n\tAND \"trigger_name\" = 'deviceb_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"deviceb_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"deviceb\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;"],"dropSchema":["DROP TABLE \"deviceb\";","DROP TRIGGER \"deviceb_trigger_update_modified_at\";","DROP TABLE \"device\";","DROP TRIGGER \"device_trigger_update_modified_at\";","DROP FUNCTION \"trigger_update_modified_at\"();"],"rules":[]},"{\"tables\":{\"organization\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"name\",\"required\":true,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"WebResource\",\"fieldName\":\"not translated webresource\",\"required\":false,\"references\":{\"resourceName\":\"not translated webresource\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"WebResource\",\"fieldName\":\"logo image\",\"required\":false,\"references\":{\"resourceName\":\"logo image\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"WebResource\",\"fieldName\":\"unrestricted artifact\",\"required\":false,\"references\":{\"resourceName\":\"unrestricted artifact\",\"fieldName\":null},\"index\":\"UNIQUE\"}],\"primitive\":false,\"name\":\"organization\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"organization\",\"modelName\":\"organization\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"},\"organization-releases-public artifacts\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"organization\",\"required\":true,\"references\":{\"resourceName\":\"organization\",\"fieldName\":\"id\"}},{\"dataType\":\"WebResource\",\"fieldName\":\"releases-public artifacts\",\"required\":true},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"organization-releases-public artifacts\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"organization\",\"releases-public artifacts\"]}],\"idField\":\"id\",\"resourceName\":\"organization-releases-public artifacts\",\"modelName\":\"organization releases public artifacts\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"organization-has-private artifacts\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"organization\",\"required\":true,\"references\":{\"resourceName\":\"organization\",\"fieldName\":\"id\"}},{\"dataType\":\"WebResource\",\"fieldName\":\"private artifacts\",\"required\":true},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"organization private artifacts\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"organization\",\"private artifacts\"]}],\"idField\":\"id\",\"resourceName\":\"organization-has-private artifacts\",\"modelName\":\"organization has private artifacts\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"organization$example\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"name\",\"required\":true,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"WebResource\",\"fieldName\":\"not translated webresource\",\"required\":false,\"references\":{\"resourceName\":\"not translated webresource\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"WebResource\",\"fieldName\":\"logo image\",\"required\":false,\"references\":{\"resourceName\":\"logo image\",\"fieldName\":null},\"index\":\"UNIQUE\"},{\"dataType\":\"WebResource\",\"fieldName\":\"unrestricted artifact\",\"required\":false,\"references\":{\"resourceName\":\"unrestricted artifact\",\"fieldName\":null},\"index\":\"UNIQUE\"}],\"primitive\":false,\"name\":\"organization\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"organization\",\"modelName\":\"organization\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"},\"organization-releases-public artifacts$example\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"organization\",\"required\":true,\"references\":{\"resourceName\":\"organization\",\"fieldName\":\"id\"}},{\"dataType\":\"WebResource\",\"fieldName\":\"releases-public artifacts\",\"required\":true},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"organization-releases-public artifacts\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"organization\",\"releases-public artifacts\"]}],\"idField\":\"id\",\"resourceName\":\"organization-releases-public artifacts\",\"modelName\":\"organization releases public artifacts\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]},\"organization-has-private artifacts$example\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"ForeignKey\",\"fieldName\":\"organization\",\"required\":true,\"references\":{\"resourceName\":\"organization\",\"fieldName\":\"id\"}},{\"dataType\":\"WebResource\",\"fieldName\":\"private artifacts\",\"required\":true},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"}],\"primitive\":false,\"name\":\"organization private artifacts\",\"indexes\":[{\"type\":\"UNIQUE\",\"fields\":[\"organization\",\"private artifacts\"]}],\"idField\":\"id\",\"resourceName\":\"organization-has-private artifacts\",\"modelName\":\"organization has private artifacts\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}]}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"name\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"logo image\":{\"WebResource\":{\"$\":[\"WebResource\"]},\"has\":{\"WebResource\":{\"$\":[\"WebResource\"]}}},\"not translated webresource\":{\"WebResource\":{\"$\":[\"WebResource\"]},\"has\":{\"WebResource\":{\"$\":[\"WebResource\"]}}},\"public artifacts\":{\"WebResource\":{\"$\":[\"WebResource\"]},\"has\":{\"WebResource\":{\"$\":[\"WebResource\"]}}},\"private artifacts\":{\"WebResource\":{\"$\":[\"WebResource\"]},\"has\":{\"WebResource\":{\"$\":[\"WebResource\"]}}},\"unrestricted artifact\":{\"WebResource\":{\"$\":[\"WebResource\"]},\"has\":{\"WebResource\":{\"$\":[\"WebResource\"]}}},\"organization\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"not translated webresource\":{\"$\":[\"not translated webresource\"]},\"logo image\":{\"$\":[\"logo image\"]},\"private artifacts\":{\"$\":[\"id\",[\"organization-has-private artifacts\",\"organization\"]]},\"organization\":{\"has\":{\"private artifacts\":{\"$\":[\"id\",[\"organization-has-private artifacts\",\"organization\"]]}}},\"unrestricted artifact\":{\"$\":[\"unrestricted artifact\"]}},\"organization\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"not translated webresource\":{\"$\":[\"not translated webresource\"]},\"logo image\":{\"$\":[\"logo image\"]},\"private artifacts\":{\"$\":[\"id\",[\"organization-has-private artifacts\",\"organization\"]]},\"unrestricted artifact\":{\"$\":[\"unrestricted artifact\"]}},\"releases\":{\"public artifacts\":{\"$\":[\"id\",[\"organization-releases-public artifacts\",\"organization\"]]}}},\"name\":{\"$\":[\"name\"]},\"not translated webresource\":{\"$\":[\"not translated webresource\"]},\"logo image\":{\"$\":[\"logo image\"]},\"releases\":{\"public artifacts\":{\"$\":[\"id\",[\"organization-releases-public artifacts\",\"organization\"]]}},\"unrestricted artifact\":{\"$\":[\"unrestricted artifact\"]}},\"organization-releases-public artifacts\":{\"organization\":{\"$\":[\"organization\",[\"organization\",\"id\"]]},\"public artifacts\":{\"$\":[\"releases-public artifacts\"]},\"releases\":{\"public artifacts\":{\"$\":[\"releases-public artifacts\"]}}},\"organization-has-private artifacts\":{\"organization\":{\"$\":[\"organization\",[\"organization\",\"id\"]]},\"private artifacts\":{\"$\":[\"private artifacts\"]},\"has\":{\"private artifacts\":{\"$\":[\"private artifacts\"]}}}},\"rules\":[[\"Rule\",[\"Body\",[\"Equals\",[\"SelectQuery\",[\"Select\",[[\"Count\",\"*\"]]],[\"From\",[\"Alias\",[\"Table\",\"organization\"],\"organization.0\"]],[\"Where\",[\"And\",[\"Exists\",[\"ReferencedField\",\"organization.0\",\"name\"]],[\"Not\",[\"And\",[\"LessThan\",[\"Integer\",0],[\"CharacterLength\",[\"ReferencedField\",\"organization.0\",\"name\"]]],[\"LessThanOrEqual\",[\"CharacterLength\",[\"ReferencedField\",\"organization.0\",\"name\"]],[\"Integer\",5]],[\"Exists\",[\"CharacterLength\",[\"ReferencedField\",\"organization.0\",\"name\"]]],[\"Exists\",[\"ReferencedField\",\"organization.0\",\"name\"]]]]]]],[\"Number\",0]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5\"]],[\"Rule\",[\"Body\",[\"Equals\",[\"SelectQuery\",[\"Select\",[[\"Count\",\"*\"]]],[\"From\",[\"Alias\",[\"Table\",\"organization\"],\"organization.0\"]],[\"Where\",[\"And\",[\"Exists\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"]],[\"Not\",[\"And\",[\"Or\",[\"Equals\",[\"Text\",\"image/png\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"Equals\",[\"Text\",\"image/jpg\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"Equals\",[\"Text\",\"image/jpeg\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]]],[\"Exists\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"LessThan\",[\"Cast\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"size\"]]],\"Big Integer\"],[\"Integer\",18874368]],[\"Exists\",[\"Cast\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"],[\"TextArray\",[\"EmbeddedText\",\"size\"]]],\"Big Integer\"]],[\"Exists\",[\"ReferencedField\",\"organization.0\",\"not translated webresource\"]]]]]]],[\"Number\",0]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\"]],[\"Rule\",[\"Body\",[\"Equals\",[\"SelectQuery\",[\"Select\",[[\"Count\",\"*\"]]],[\"From\",[\"Alias\",[\"Table\",\"organization\"],\"organization.0\"]],[\"Where\",[\"And\",[\"Exists\",[\"ReferencedField\",\"organization.0\",\"logo image\"]],[\"Not\",[\"And\",[\"Or\",[\"Equals\",[\"Text\",\"image/png\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"logo image\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"Equals\",[\"Text\",\"image/jpg\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"logo image\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"Equals\",[\"Text\",\"image/jpeg\"],[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"logo image\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]]],[\"Exists\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"logo image\"],[\"TextArray\",[\"EmbeddedText\",\"content_type\"]]]],[\"LessThan\",[\"Cast\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"logo image\"],[\"TextArray\",[\"EmbeddedText\",\"size\"]]],\"Big Integer\"],[\"Integer\",18874368]],[\"Exists\",[\"Cast\",[\"ExtractJSONPathAsText\",[\"ReferencedField\",\"organization.0\",\"logo image\"],[\"TextArray\",[\"EmbeddedText\",\"size\"]]],\"Big Integer\"]],[\"Exists\",[\"ReferencedField\",\"organization.0\",\"logo image\"]]]]]]],[\"Number\",0]]],[\"StructuredEnglish\",\"It is necessary that each organization that has a logo image, has a logo image that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\"]]],\"synonyms\":{\"organization private artifacts\":\"organization-has-private artifacts\"},\"lfInfo\":{\"rules\":{\"It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5\":{\"root\":{\"table\":\"organization\",\"alias\":\"organization.0\"}},\"It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\":{\"root\":{\"table\":\"organization\",\"alias\":\"organization.0\"}},\"It is necessary that each organization that has a logo image, has a logo image that has a Content Type (Type) that is equal to \\\"image/png\\\" or \\\"image/jpg\\\" or \\\"image/jpeg\\\" and has a Size (Type) that is less than 18874368.\":{\"root\":{\"table\":\"organization\",\"alias\":\"organization.0\"}}}}}":{"synonyms":{"organization private artifacts":"organization-has-private artifacts"},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"name":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"logo image":{"WebResource":{"$":["WebResource"]},"has":{"WebResource":{"$":["WebResource"]}}},"not translated webresource":{"WebResource":{"$":["WebResource"]},"has":{"WebResource":{"$":["WebResource"]}}},"public artifacts":{"WebResource":{"$":["WebResource"]},"has":{"WebResource":{"$":["WebResource"]}}},"private artifacts":{"WebResource":{"$":["WebResource"]},"has":{"WebResource":{"$":["WebResource"]}}},"unrestricted artifact":{"WebResource":{"$":["WebResource"]},"has":{"WebResource":{"$":["WebResource"]}}},"organization":{"has":{"name":{"$":["name"]},"not translated webresource":{"$":["not translated webresource"]},"logo image":{"$":["logo image"]},"private artifacts":{"$":["id",["organization-has-private artifacts","organization"]]},"organization":{"has":{"private artifacts":{"$":["id",["organization-has-private artifacts","organization"]]}}},"unrestricted artifact":{"$":["unrestricted artifact"]}},"organization":{"has":{"name":{"$":["name"]},"not translated webresource":{"$":["not translated webresource"]},"logo image":{"$":["logo image"]},"private artifacts":{"$":["id",["organization-has-private artifacts","organization"]]},"unrestricted artifact":{"$":["unrestricted artifact"]}},"releases":{"public artifacts":{"$":["id",["organization-releases-public artifacts","organization"]]}}},"name":{"$":["name"]},"not translated webresource":{"$":["not translated webresource"]},"logo image":{"$":["logo image"]},"releases":{"public artifacts":{"$":["id",["organization-releases-public artifacts","organization"]]}},"unrestricted artifact":{"$":["unrestricted artifact"]}},"organization-releases-public artifacts":{"organization":{"$":["organization",["organization","id"]]},"public artifacts":{"$":["releases-public artifacts"]},"releases":{"public artifacts":{"$":["releases-public artifacts"]}}},"organization-has-private artifacts":{"organization":{"$":["organization",["organization","id"]]},"private artifacts":{"$":["private artifacts"]},"has":{"private artifacts":{"$":["private artifacts"]}}}},"tables":{"organization":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"name","required":true,"references":{"resourceName":"name","fieldName":null}},{"dataType":"WebResource","fieldName":"not translated webresource","required":false,"references":{"resourceName":"not translated webresource","fieldName":null},"index":"UNIQUE"},{"dataType":"WebResource","fieldName":"logo image","required":false,"references":{"resourceName":"logo image","fieldName":null},"index":"UNIQUE"},{"dataType":"WebResource","fieldName":"unrestricted artifact","required":false,"references":{"resourceName":"unrestricted artifact","fieldName":null},"index":"UNIQUE"}],"primitive":false,"name":"organization","indexes":[],"idField":"id","resourceName":"organization","modelName":"organization","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"organization-releases-public artifacts":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"organization","required":true,"references":{"resourceName":"organization","fieldName":"id"}},{"dataType":"WebResource","fieldName":"releases-public artifacts","required":true},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"organization-releases-public artifacts","indexes":[{"type":"UNIQUE","fields":["organization","releases-public artifacts"]}],"idField":"id","resourceName":"organization-releases-public artifacts","modelName":"organization releases public artifacts","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"organization-has-private artifacts":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"organization","required":true,"references":{"resourceName":"organization","fieldName":"id"}},{"dataType":"WebResource","fieldName":"private artifacts","required":true},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"organization private artifacts","indexes":[{"type":"UNIQUE","fields":["organization","private artifacts"]}],"idField":"id","resourceName":"organization-has-private artifacts","modelName":"organization has private artifacts","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"organization$example":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"name","required":true,"references":{"resourceName":"name","fieldName":null}},{"dataType":"WebResource","fieldName":"not translated webresource","required":false,"references":{"resourceName":"not translated webresource","fieldName":null},"index":"UNIQUE"},{"dataType":"WebResource","fieldName":"logo image","required":false,"references":{"resourceName":"logo image","fieldName":null},"index":"UNIQUE"},{"dataType":"WebResource","fieldName":"unrestricted artifact","required":false,"references":{"resourceName":"unrestricted artifact","fieldName":null},"index":"UNIQUE"}],"primitive":false,"name":"organization","indexes":[],"idField":"id","resourceName":"organization","modelName":"organization","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"organization-releases-public artifacts$example":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"organization","required":true,"references":{"resourceName":"organization","fieldName":"id"}},{"dataType":"WebResource","fieldName":"releases-public artifacts","required":true},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"organization-releases-public artifacts","indexes":[{"type":"UNIQUE","fields":["organization","releases-public artifacts"]}],"idField":"id","resourceName":"organization-releases-public artifacts","modelName":"organization releases public artifacts","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"organization-has-private artifacts$example":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"ForeignKey","fieldName":"organization","required":true,"references":{"resourceName":"organization","fieldName":"id"}},{"dataType":"WebResource","fieldName":"private artifacts","required":true},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"}],"primitive":false,"name":"organization private artifacts","indexes":[{"type":"UNIQUE","fields":["organization","private artifacts"]}],"idField":"id","resourceName":"organization-has-private artifacts","modelName":"organization has private artifacts","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"localFields":{},"fetchProcessingFields":{},"webresourceFields":{}}},"createSchema":["DO $$\nBEGIN\n\tCREATE FUNCTION \"trigger_update_modified_at\"()\n\tRETURNS TRIGGER AS $fn$\n\tBEGIN\n\t\tNEW.\"modified at\" = NOW();\nRETURN NEW;\n\tEND;\n\t$fn$ LANGUAGE plpgsql;\nEXCEPTION WHEN duplicate_function THEN\n\tNULL;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"organization\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\t\"name\" VARCHAR(255) NOT NULL\n,\t\"not translated webresource\" JSONB NULL UNIQUE\n,\t\"logo image\" JSONB NULL UNIQUE\n,\t\"unrestricted artifact\" JSONB NULL UNIQUE\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'organization'\n\tAND \"trigger_name\" = 'organization_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"organization_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"organization\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"organization-releases-public artifacts\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"organization\" INTEGER NOT NULL\n,\t\"releases-public artifacts\" JSONB NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\tFOREIGN KEY (\"organization\") REFERENCES \"organization\" (\"id\")\n,\tUNIQUE(\"organization\", \"releases-public artifacts\")\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'organization-releases-public artifacts'\n\tAND \"trigger_name\" = 'organization-releases-public artifacts_trigger_update_modified_'\n) THEN\n\tCREATE TRIGGER \"organization-releases-public artifacts_trigger_update_modified_\"\n\tBEFORE UPDATE ON \"organization-releases-public artifacts\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"organization private artifacts\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"organization\" INTEGER NOT NULL\n,\t\"private artifacts\" JSONB NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\tFOREIGN KEY (\"organization\") REFERENCES \"organization\" (\"id\")\n,\tUNIQUE(\"organization\", \"private artifacts\")\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'organization private artifacts'\n\tAND \"trigger_name\" = 'organization private artifacts_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"organization private artifacts_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"organization private artifacts\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;"],"dropSchema":["DROP TABLE \"organization private artifacts\";","DROP TRIGGER \"organization private artifacts_trigger_update_modified_at\";","DROP TABLE \"organization-releases-public artifacts\";","DROP TRIGGER \"organization-releases-public artifacts_trigger_update_modified_\";","DROP TABLE \"organization\";","DROP TRIGGER \"organization_trigger_update_modified_at\";","DROP FUNCTION \"trigger_update_modified_at\"();"],"rules":[{"structuredEnglish":"It is necessary that each organization that has a name, has a name that has a Length (Type) that is greater than 0 and is less than or equal to 5","sql":"SELECT (\n\tSELECT COUNT(*)\n\tFROM \"organization\" AS \"organization.0\"\n\tWHERE \"organization.0\".\"name\" IS NOT NULL\n\tAND NOT (\n\t\t0 < LENGTH(\"organization.0\".\"name\")\n\t\tAND LENGTH(\"organization.0\".\"name\") <= 5\n\t\tAND LENGTH(\"organization.0\".\"name\") IS NOT NULL\n\t\tAND \"organization.0\".\"name\" IS NOT NULL\n\t)\n\tAND ($1 = '{}'\n\tOR \"organization.0\".\"id\" = ANY(CAST($1 AS INTEGER[])))\n) = 0 AS \"result\";","bindings":[["Bind","organization"]],"referencedFields":{"organization":["name","id"]},"ruleReferencedFields":{"organization":{"create":["name","id"],"update":["name","id"],"delete":[]}}},{"structuredEnglish":"It is necessary that each organization that has a not translated webresource, has a not translated webresource that has a Content Type (Type) that is equal to \"image/png\" or \"image/jpg\" or \"image/jpeg\" and has a Size (Type) that is less than 18874368.","sql":"SELECT (\n\tSELECT COUNT(*)\n\tFROM \"organization\" AS \"organization.0\"\n\tWHERE \"organization.0\".\"not translated webresource\" IS NOT NULL\n\tAND NOT (\n\t\t($1 = \"organization.0\".\"not translated webresource\" #>> ARRAY['content_type']\n\t\tOR $2 = \"organization.0\".\"not translated webresource\" #>> ARRAY['content_type']\n\t\tOR $3 = \"organization.0\".\"not translated webresource\" #>> ARRAY['content_type'])\n\t\tAND \"organization.0\".\"not translated webresource\" #>> ARRAY['content_type'] IS NOT NULL\n\t\tAND CAST(\"organization.0\".\"not translated webresource\" #>> ARRAY['size'] AS BIGINT) < 18874368\n\t\tAND CAST(\"organization.0\".\"not translated webresource\" #>> ARRAY['size'] AS BIGINT) IS NOT NULL\n\t\tAND \"organization.0\".\"not translated webresource\" IS NOT NULL\n\t)\n\tAND ($4 = '{}'\n\tOR \"organization.0\".\"id\" = ANY(CAST($4 AS INTEGER[])))\n) = 0 AS \"result\";","bindings":[["Text","image/png"],["Text","image/jpg"],["Text","image/jpeg"],["Bind","organization"]],"referencedFields":{"organization":["not translated webresource","id"]},"ruleReferencedFields":{"organization":{"create":["not translated webresource","id"],"update":["not translated webresource","id"],"delete":[]}}},{"structuredEnglish":"It is necessary that each organization that has a logo image, has a logo image that has a Content Type (Type) that is equal to \"image/png\" or \"image/jpg\" or \"image/jpeg\" and has a Size (Type) that is less than 18874368.","sql":"SELECT (\n\tSELECT COUNT(*)\n\tFROM \"organization\" AS \"organization.0\"\n\tWHERE \"organization.0\".\"logo image\" IS NOT NULL\n\tAND NOT (\n\t\t($1 = \"organization.0\".\"logo image\" #>> ARRAY['content_type']\n\t\tOR $2 = \"organization.0\".\"logo image\" #>> ARRAY['content_type']\n\t\tOR $3 = \"organization.0\".\"logo image\" #>> ARRAY['content_type'])\n\t\tAND \"organization.0\".\"logo image\" #>> ARRAY['content_type'] IS NOT NULL\n\t\tAND CAST(\"organization.0\".\"logo image\" #>> ARRAY['size'] AS BIGINT) < 18874368\n\t\tAND CAST(\"organization.0\".\"logo image\" #>> ARRAY['size'] AS BIGINT) IS NOT NULL\n\t\tAND \"organization.0\".\"logo image\" IS NOT NULL\n\t)\n\tAND ($4 = '{}'\n\tOR \"organization.0\".\"id\" = ANY(CAST($4 AS INTEGER[])))\n) = 0 AS \"result\";","bindings":[["Text","image/png"],["Text","image/jpg"],["Text","image/jpeg"],["Bind","organization"]],"referencedFields":{"organization":["logo image","id"]},"ruleReferencedFields":{"organization":{"create":["logo image","id"],"update":["logo image","id"],"delete":[]}}}]},"{\"tables\":{\"device\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"name\",\"required\":false,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"Text\",\"fieldName\":\"note\",\"required\":false,\"references\":{\"resourceName\":\"note\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"last heartbeat\",\"required\":false,\"references\":{\"resourceName\":\"last heartbeat\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"type\",\"required\":true,\"references\":{\"resourceName\":\"type\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"count\",\"required\":false,\"references\":{\"resourceName\":\"count\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"device\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"device\",\"modelName\":\"device\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"},\"device$example\":{\"fields\":[{\"dataType\":\"Date Time\",\"fieldName\":\"created at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Date Time\",\"fieldName\":\"modified at\",\"required\":true,\"defaultValue\":\"CURRENT_TIMESTAMP\"},{\"dataType\":\"Serial\",\"fieldName\":\"id\",\"required\":true,\"index\":\"PRIMARY KEY\"},{\"dataType\":\"Short Text\",\"fieldName\":\"name\",\"required\":false,\"references\":{\"resourceName\":\"name\",\"fieldName\":null}},{\"dataType\":\"Text\",\"fieldName\":\"note\",\"required\":false,\"references\":{\"resourceName\":\"note\",\"fieldName\":null}},{\"dataType\":\"Date Time\",\"fieldName\":\"last heartbeat\",\"required\":false,\"references\":{\"resourceName\":\"last heartbeat\",\"fieldName\":null}},{\"dataType\":\"Short Text\",\"fieldName\":\"type\",\"required\":true,\"references\":{\"resourceName\":\"type\",\"fieldName\":null}},{\"dataType\":\"Integer\",\"fieldName\":\"count\",\"required\":false,\"references\":{\"resourceName\":\"count\",\"fieldName\":null}}],\"primitive\":false,\"name\":\"device\",\"indexes\":[],\"idField\":\"id\",\"resourceName\":\"device\",\"modelName\":\"device\",\"triggers\":[{\"when\":\"BEFORE\",\"operation\":\"UPDATE\",\"level\":\"ROW\",\"fnName\":\"trigger_update_modified_at\"}],\"referenceScheme\":\"id\"}},\"functions\":{\"trigger_update_modified_at\":{\"type\":\"trigger\",\"body\":\"NEW.\\\"modified at\\\" = NOW();\\nRETURN NEW;\",\"language\":\"plpgsql\"}},\"relationships\":{\"Big Integer\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Serial\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Big Serial\":{\"Big Integer\":{\"$\":[\"Big Integer\"]},\"has\":{\"Big Integer\":{\"$\":[\"Big Integer\"]}}},\"Case Insensitive Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Hashed\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"SHA\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Length\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Current Time\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"Short Text\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"Red Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Green Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Blue Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Alpha Component\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Color\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"Filename\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"HRef\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Content Disposition\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"Size\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"WebResource\":{\"JSON\":{\"$\":[\"JSON\"]},\"has\":{\"JSON\":{\"$\":[\"JSON\"]}}},\"name\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"note\":{\"Text\":{\"$\":[\"Text\"]},\"has\":{\"Text\":{\"$\":[\"Text\"]}}},\"last heartbeat\":{\"Date Time\":{\"$\":[\"Date Time\"]},\"has\":{\"Date Time\":{\"$\":[\"Date Time\"]}}},\"type\":{\"Short Text\":{\"$\":[\"Short Text\"]},\"has\":{\"Short Text\":{\"$\":[\"Short Text\"]}}},\"count\":{\"Integer\":{\"$\":[\"Integer\"]},\"has\":{\"Integer\":{\"$\":[\"Integer\"]}}},\"device\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"last heartbeat\":{\"$\":[\"last heartbeat\"]},\"type\":{\"$\":[\"type\"]},\"count\":{\"$\":[\"count\"]}},\"device\":{\"has\":{\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"last heartbeat\":{\"$\":[\"last heartbeat\"]},\"type\":{\"$\":[\"type\"]},\"count\":{\"$\":[\"count\"]}}},\"name\":{\"$\":[\"name\"]},\"note\":{\"$\":[\"note\"]},\"last heartbeat\":{\"$\":[\"last heartbeat\"]},\"type\":{\"$\":[\"type\"]},\"count\":{\"$\":[\"count\"]}}},\"rules\":[],\"synonyms\":{},\"lfInfo\":{\"rules\":{}}}":{"synonyms":{},"relationships":{"Big Integer":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Serial":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Big Serial":{"Big Integer":{"$":["Big Integer"]},"has":{"Big Integer":{"$":["Big Integer"]}}},"Case Insensitive Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Hashed":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"SHA":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Length":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Current Time":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"Short Text":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"Red Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Green Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Blue Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Alpha Component":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Color":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"Filename":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"HRef":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Content Disposition":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"Size":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"WebResource":{"JSON":{"$":["JSON"]},"has":{"JSON":{"$":["JSON"]}}},"name":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"note":{"Text":{"$":["Text"]},"has":{"Text":{"$":["Text"]}}},"last heartbeat":{"Date Time":{"$":["Date Time"]},"has":{"Date Time":{"$":["Date Time"]}}},"type":{"Short Text":{"$":["Short Text"]},"has":{"Short Text":{"$":["Short Text"]}}},"count":{"Integer":{"$":["Integer"]},"has":{"Integer":{"$":["Integer"]}}},"device":{"has":{"name":{"$":["name"]},"note":{"$":["note"]},"last heartbeat":{"$":["last heartbeat"]},"type":{"$":["type"]},"count":{"$":["count"]}},"device":{"has":{"name":{"$":["name"]},"note":{"$":["note"]},"last heartbeat":{"$":["last heartbeat"]},"type":{"$":["type"]},"count":{"$":["count"]}}},"name":{"$":["name"]},"note":{"$":["note"]},"last heartbeat":{"$":["last heartbeat"]},"type":{"$":["type"]},"count":{"$":["count"]}}},"tables":{"device":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"name","required":false,"references":{"resourceName":"name","fieldName":null}},{"dataType":"Text","fieldName":"note","required":false,"references":{"resourceName":"note","fieldName":null}},{"dataType":"Date Time","fieldName":"last heartbeat","required":false,"references":{"resourceName":"last heartbeat","fieldName":null}},{"dataType":"Short Text","fieldName":"type","required":true,"references":{"resourceName":"type","fieldName":null}},{"dataType":"Integer","fieldName":"count","required":false,"references":{"resourceName":"count","fieldName":null}}],"primitive":false,"name":"device","indexes":[],"idField":"id","resourceName":"device","modelName":"device","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}},"device$example":{"fields":[{"dataType":"Date Time","fieldName":"created at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Date Time","fieldName":"modified at","required":true,"defaultValue":"CURRENT_TIMESTAMP"},{"dataType":"Serial","fieldName":"id","required":true,"index":"PRIMARY KEY"},{"dataType":"Short Text","fieldName":"name","required":false,"references":{"resourceName":"name","fieldName":null}},{"dataType":"Text","fieldName":"note","required":false,"references":{"resourceName":"note","fieldName":null}},{"dataType":"Date Time","fieldName":"last heartbeat","required":false,"references":{"resourceName":"last heartbeat","fieldName":null}},{"dataType":"Short Text","fieldName":"type","required":true,"references":{"resourceName":"type","fieldName":null}},{"dataType":"Integer","fieldName":"count","required":false,"references":{"resourceName":"count","fieldName":null}}],"primitive":false,"name":"device","indexes":[],"idField":"id","resourceName":"device","modelName":"device","triggers":[{"when":"BEFORE","operation":"UPDATE","level":"ROW","fnName":"trigger_update_modified_at"}],"referenceScheme":"id","localFields":{},"fetchProcessingFields":{},"webresourceFields":{}}},"createSchema":["DO $$\nBEGIN\n\tCREATE FUNCTION \"trigger_update_modified_at\"()\n\tRETURNS TRIGGER AS $fn$\n\tBEGIN\n\t\tNEW.\"modified at\" = NOW();\nRETURN NEW;\n\tEND;\n\t$fn$ LANGUAGE plpgsql;\nEXCEPTION WHEN duplicate_function THEN\n\tNULL;\nEND;\n$$;","CREATE TABLE IF NOT EXISTS \"device\" (\n\t\"created at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"modified at\" TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP NOT NULL\n,\t\"id\" SERIAL NOT NULL PRIMARY KEY\n,\t\"name\" VARCHAR(255) NULL\n,\t\"note\" TEXT NULL\n,\t\"last heartbeat\" TIMESTAMPTZ NULL\n,\t\"type\" VARCHAR(255) NOT NULL\n,\t\"count\" INTEGER NULL\n);","DO\n$$\nBEGIN\nIF NOT EXISTS(\n\tSELECT 1\n\tFROM \"information_schema\".\"triggers\"\n\tWHERE \"event_object_table\" = 'device'\n\tAND \"trigger_name\" = 'device_trigger_update_modified_at'\n) THEN\n\tCREATE TRIGGER \"device_trigger_update_modified_at\"\n\tBEFORE UPDATE ON \"device\"\n\tFOR EACH ROW\n\tEXECUTE PROCEDURE \"trigger_update_modified_at\"();\nEND IF;\nEND;\n$$;"],"dropSchema":["DROP TABLE \"device\";","DROP TRIGGER \"device_trigger_update_modified_at\";","DROP FUNCTION \"trigger_update_modified_at\"();"],"rules":[]}}}}