[fdt] Another FDT candidate

David Kemp <dk190a@gmail.com> Wed, 26 August 2020 17:58 UTC

Return-Path: <dk190a@gmail.com>
X-Original-To: fdt@ietfa.amsl.com
Delivered-To: fdt@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CEB073A195A for <fdt@ietfa.amsl.com>; Wed, 26 Aug 2020 10:58:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.087
X-Spam-Level:
X-Spam-Status: No, score=-2.087 tagged_above=-999 required=5 tests=[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, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1DlxBGkK3--3 for <fdt@ietfa.amsl.com>; Wed, 26 Aug 2020 10:58:53 -0700 (PDT)
Received: from mail-ot1-x333.google.com (mail-ot1-x333.google.com [IPv6:2607:f8b0:4864:20::333]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2E9473A1956 for <fdt@ietf.org>; Wed, 26 Aug 2020 10:58:53 -0700 (PDT)
Received: by mail-ot1-x333.google.com with SMTP id f42so2212529otf.13 for <fdt@ietf.org>; Wed, 26 Aug 2020 10:58:53 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=n5AyzHcsoXMzrFi4IwZiwCj+dx445mq2KF1bYy9m6CY=; b=Snp7TVXvNRcfQGwAiqs7b8lP3UAnfVPkONun8tZr5XHpDDlVkANkWKKrz6yiYItb7/ Pjzd/dcpbm1Usi4wy+jUzpBdFMcTifW6aZKbS2b70JrYYP87XyTmxhvoTv72pmImZkoC MzIa5aU3YsLXTd0FuaGoxkS7ZZj7z4QF0LKW0nq96y2Y2EdWmqrPnX/rwhsTXP4SwVJc xx/YZBLT81KpfQCITKj5Zhk8hWyjFYAsJDfiXWLBxnII+1JBjsDcM+A+a8EBksXjbFgm VY8kuYIhX/v89aOfbaFRJLKOk2GV7ZTf6Stjpuzlm2aZKvcwk5QVfWgmhBB+uR6Qaan+ iB5g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=n5AyzHcsoXMzrFi4IwZiwCj+dx445mq2KF1bYy9m6CY=; b=qh2OWzz4oyNl0zG0z8ExrNb5Lh+UieyUDApoh5Hu7Yq3nuwOo/ySx+sDjocPH+44aH T52FXAmE7gpM/Z/lm0V5iguYE8eKu9dakOHiP8f35D6I311FJXSWamXxKPsEfKGUr7ab Waasmea8iaDVINBW7B0Mkzuwxa4gtxJYlAODyDToiYU5wGNW0tkjbBId/57U562QmNCu wGLu6caQjH4RuStUCdixpSjGVaIAe6BD0R6Wy/Iq5GABihlYF3U/AEeEIos6Z5QCtnL8 Jc1eMk/lUvfSVBkcoPwaPwrDpjeu/FIV9qBcWm/UlZVDZ1K/Rw1gQnXhD7nCI2De56DO wswQ==
X-Gm-Message-State: AOAM530lbyzhtfk2VAPIGD55E4GtrSfHejLJ6irwps2fc1V5Djezvhrq XCK3Y7FWNPSFwJ042kMsjjUiTuJ9MNjy6JRIDVWyAjg5m7CrGg==
X-Google-Smtp-Source: ABdhPJxvY6h9WTgDglYK6svANQlIP0GvrYppDrNLMbAkbMs/RMo7ekjReI56lDaAZjnCNQOXfCTHCWy62qQuoYO4Bnk=
X-Received: by 2002:a9d:4:: with SMTP id 4mr10776478ota.66.1598464731876; Wed, 26 Aug 2020 10:58:51 -0700 (PDT)
MIME-Version: 1.0
From: David Kemp <dk190a@gmail.com>
Date: Wed, 26 Aug 2020 13:58:41 -0400
Message-ID: <CAE5tNmpNKFmFBRLuDAsOZ5Gk3wouMVdxuFLSXSAUVFLzgEXDNA@mail.gmail.com>
To: fdt@ietf.org
Content-Type: multipart/alternative; boundary="0000000000008790a005adcb922f"
Archived-At: <https://mailarchive.ietf.org/arch/msg/fdt/SDSzbNErDVYrBSIOsjzmE5mqsIo>
Subject: [fdt] Another FDT candidate
X-BeenThere: fdt@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Mailing list for the discussion of the use of formal description techniques in IETF documents <fdt.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/fdt>, <mailto:fdt-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/fdt/>
List-Post: <mailto:fdt@ietf.org>
List-Help: <mailto:fdt-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/fdt>, <mailto:fdt-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 26 Aug 2020 17:58:55 -0000

Hi Marc,

I am working on a new PDU description language.  It:
* is abstract in that it separates type definitions from
serialization/encoding
* is targeted at the full spectrum of structured data formats from XML to
JSON to CBOR to schema-required binary formats such as
Protobuf/Thrift/Avro/etc to bare-bones bits in boxes like RFC 791.  It is
not targeted at text formatting like regular expressions or xBNF.
* supports distributed development with namespaces and short namespace
prefixes
* is itself a structured data object that can be serialized and sent with
the data it describes

Every type definition is a 5-tuple with a fixed format that can be
represented graphically as an entity in an ERD or textually in the
language's IDL. In the database modeling hierarchy of conceptual, logical
and physical, it is a fourth category, "physical information model", lying
between the logical model and the physical data model.

It's purpose is to both 1) translate between concrete PDU description
languages (e.g. RELAX <--> JSON Schema <--> CDDL), and 2) translate between
concrete PDUs (XML <--> JSON <--> CBOR).  It's advantage is that its
translation rules can be fit for purpose. JSON protocols typically define
everything as maps and developers are enormously resistant to using
anything else. As a result, JSON data typically gets translated to CBOR
data that is anything but concise.
Using an information model allows developers to have their cake and eat it
too.  For example, ISO 3166 country definitions can be represented as maps
in JSON but as arrays in databases, spreadsheet CSVs, and CBOR.

The latest draft of the specification is available from
https://github.com/oasis-tcs/openc2-jadn/tree/working. (Because it is not a
standard the GitHub base branch is empty - be sure to look in the working
branch.) Feedback on the draft itself, as well as suggestions for how and
what venue to use for its maturation, are welcome.

Regards,
David

From: Marc Petit-Huguenin <petithug@acm.org>
> <&lt;petithug@acm.org&gt;>Date: Fri, Jun 12, 2020 at 10:03 AM
> Hi Scott,

I still find your terminology confusing. I am not sure if you are
> proposing to design a new PDU description language (ala ASN.1, ABNF, RBNF,
> CDDL, XML RELAX, etc..) or a new structured PDU format (ala DER, BER, XML,
> JSON, CBOR, etc...). If it is the former, I would suggest to resend your
> email to fdt@ietf.org, where we discuss this kind of things. Thanks.