static new ThreadLocal ai_postTriple_verified; static S ai_postTriple(T3 triple) { // check, clean ping(); if (triple_anyPartNull(triple)) null; triple = trimTriple(triple); if (!ai_tripleAllowedToPost(triple)) null; // fail("No"); // existing? if (has(triple)) null; // invalid? if (has(ai_tripleToInvalid(triple))) null; // post handler? AI_PostHandler handler = ai_postHandler(); T3 striple = toSymbolTriple(triple); if (handler != null) ret asGlobalID(handler.postTriple(striple)); else { // post web the normal way Web web = webFromTriple(striple); Bool ver = ai_postTriple_verified!; if (ver != null) web.unverified = !ver; postSoftwareMadeWeb(web); ret web.globalID(); } } static S ai_postTriple(S a, S b, S c) { ret ai_postTriple(t3(a, b, c)); }