From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Andrew Hyatt Newsgroups: gmane.emacs.devel Subject: Re: [ELPA] New package: triples Date: Wed, 2 Nov 2022 22:37:15 -0400 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="00000000000081b9b505ec87d631" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="21810"; mail-complaints-to="usenet@ciao.gmane.io" To: Andrew Hyatt , emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Nov 03 03:38:11 2022 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oqQ7P-0005Tn-Pb for ged-emacs-devel@m.gmane-mx.org; Thu, 03 Nov 2022 03:38:11 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oqQ6l-0003NX-O2; Wed, 02 Nov 2022 22:37:31 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oqQ6k-0003Mq-5r for emacs-devel@gnu.org; Wed, 02 Nov 2022 22:37:30 -0400 Original-Received: from mail-yw1-x1135.google.com ([2607:f8b0:4864:20::1135]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oqQ6i-0002ZW-E7 for emacs-devel@gnu.org; Wed, 02 Nov 2022 22:37:29 -0400 Original-Received: by mail-yw1-x1135.google.com with SMTP id 00721157ae682-3691e040abaso3608347b3.9 for ; Wed, 02 Nov 2022 19:37:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=nGN7BPLSPvs7mtHLZ28i8/cHDgMne3gwUqdnLJnv+Tk=; b=F7TCgRXvckJ85uh9uDAVCdTx8FIKEzKeVnudDfSILLtQ7EpB1Nv97dWr+C2lcmdUSY 53fpkci+5StYYUfPOvtzwT9eNzxAtn3EZRZphU0NOj3FSrL5noXSIVoCAJiQpUAMXL2W Ag/ahnYJc5ZuezPb7sRowpK6J634xccL+e/jViG8S2brqrQSZQ/40vJ51nXsdK9CuGX6 iIlqMJ6hlV810I0nkEJ8wyBSxX/4sMpof/7jTiEfLVDURKLRZgCs0Q2gbo68MqvdZQF2 4jPShtikjGagRDIt2J8qrqqvPgKCbwd9JtTaldTso7twrXyAHuIut51HYHs/iRAWl+JK wgtA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=nGN7BPLSPvs7mtHLZ28i8/cHDgMne3gwUqdnLJnv+Tk=; b=O4hN6oSQA6HVahb37ZxDhebccR5olpBZY7/wbtOy6jJnEwQIGsAjRQtdD21ipobFxT qgLeL8qoYU49yZWAHQhoHmyYV6p5yYb85u8Zrt8wwKV5qb0HAH8f+0r5tqmfq7uswqLn ZHKyaaU/w8WwH+pDmYMJQybT4zjavzzfv1ior+ibkzfRAr26GJQPktPHIPQabWJ3UERN krEIfMFOebECAGNRMuOiqU4dtrxiqskakfl8Big9Bvr20PsY/+2ZheJUJa5/Br1DJgz8 JOouAoigfh5UxHmpMkfUGod04j2rjYSc10LYOP/IHeHKplKxWcsXC8TO8BbS1JpAeh2m 6NGw== X-Gm-Message-State: ACrzQf22h6Vjrf9/pGJsssssbUqro2j1gGtPL2/KZ6Ycg/n9zRrGYqHX bHkNKH+8x+dLTZKCdKaefx7bmnrpsEvUbYiAox47vba7JoKoiQ== X-Google-Smtp-Source: AMsMyM6eiGljlj+5SY1qtD0r7SX3v4iZE/ia2fmRkEJJoRf8tL5c8RtDqLKeDikxda7cHc7no6eavkH52dJ9tj0hvlU= X-Received: by 2002:a81:4e87:0:b0:368:3422:a62d with SMTP id c129-20020a814e87000000b003683422a62dmr26545077ywb.277.1667443047117; Wed, 02 Nov 2022 19:37:27 -0700 (PDT) In-Reply-To: Received-SPF: pass client-ip=2607:f8b0:4864:20::1135; envelope-from=ahyatt@gmail.com; helo=mail-yw1-x1135.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: "Emacs-devel" Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:299045 Archived-At: --00000000000081b9b505ec87d631 Content-Type: text/plain; charset="UTF-8" Yes, this is in theory possible depending on how you use this library! I've seen this done as CVTs (Compound Value Types). To take your example, (Joe HAS employee status) SINCE 2012-10-28, it'd be something like: Subject: Joe Predicate: /employment/status Object: "6988a214-368c-40a2-9e51-8a7f5549de44" Subject: "6988a214-368c-40a2-9e51-8a7f5549de44" Predicate: /employment/start Object: "2012-10-28" On Thu, Oct 27, 2022 at 7:39 PM Jean Louis wrote: > I have forgot to mention that any relationship subject, predicate, > object, itself, should be capable of becoming both subject and object. > > Employee IS status > Joe HAS employee (status) > Date IS TIME, etc. > 2012-10-28 IS date > (Joe HAS employee status) SINCE 2012-10-28 > ABC INC. IS company > Company EMPLOYED Joe > Trevis HAS manager (status) > (Company EMPLOYED Joe) HAS Trevis > ((Company EMPLOYED Joe) HAS Trevis) MANAGES Joe > > and so on > > > -- > Jean > > Take action in Free Software Foundation campaigns: > https://www.fsf.org/campaigns > > In support of Richard M. Stallman > https://stallmansupport.org/ > --00000000000081b9b505ec87d631 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Yes, this is in theory possible depending on how you use t= his library!=C2=A0 I've seen this done as CVTs (Compound Value Types).= =C2=A0 To take your example, (Joe HAS employee status) SINCE 2012-10-28, it= 'd be something like:

Subject: Joe
Predica= te: /employment/status
Object:=C2=A0"6988a214-368c-40a2-9e51= -8a7f5549de44"

Subject:=C2=A0"6988a214-3= 68c-40a2-9e51-8a7f5549de44"
Predicate: /employment/start
Object: "2012-10-28"

=
On Thu= , Oct 27, 2022 at 7:39 PM Jean Louis <bugs@gnu.support> wrote:
I have forgot to menti= on that any relationship subject, predicate,
object, itself, should be capable of becoming both subject and object.

Employee IS status
Joe HAS employee (status)
Date IS TIME, etc.
2012-10-28 IS date
(Joe HAS employee status) SINCE 2012-10-28
ABC INC. IS company
Company EMPLOYED Joe
Trevis HAS manager (status)
(Company EMPLOYED Joe) HAS Trevis
((Company EMPLOYED Joe) HAS Trevis) MANAGES Joe

and so on


--
Jean

Take action in Free Software Foundation campaigns:
https://www.fsf.org/campaigns

In support of Richard M. Stallman
https://stallmansupport.org/
--00000000000081b9b505ec87d631--