This ontology focuses on the definition of languages and grammars relevant to API4KP, including but not limited to natural languages.
Elisa Kendall (ekendall at thematix.com)
Davide Sottara (sottara.davide at mayo.edu)
The https://www.omg.org/spec/API4KP/20210201/api4kp-lang.rdf version of this ontology was modified to leverage the Commons Ontology Library (API4KP-22), including replacement of references to Specification Metadata and references to LCC with the Commons Annotation Vocabulary and other Commons ontologies, to reduce the dependency on DOL as appropriate, and to address inconsistencies in the representation of linguistic entities (API4KP-29).
Copyright (c) 2014-2023 Fraunhofer Gesellschaft
Copyright (c) 2014-2023 Freie Universität Berlin
Copyright (c) 2014-2023 Mayo Foundation for Medical Education and Research (MFMER)
Copyright (c) 2014-2023 Raytheon Technologies
Copyright (c) 2014-2023 Thematix Partners LLC
Copyright (c) 2015-2023 Object Management Group, Inc.
Copyright (c) 2019-2023 Universität Leipzig
formal language
graph-based parsing structure that formalizes an expression based on the semantics of its information content
ASGs are the expressions that are closest to a knowledge asset, which otherwise cannot be shared without involving some language
abstract syntax
a formal grammar that includes some and only rules that have a direct impact on the semantics of the conformant sentences
In computer science, abstract syntaxes are used to construct Parsers
DOL's 'abstract syntax' is an alias of api4kp's machine-interpretable language, i.e. a language that is specified by some expression of an abstract syntax in the api4kp's sense
tree-based parsing structure that formalizes an expression according to the rules of an abstract syntax
set of graphemes used to construct symbols, terms and sentences in a language
not limited to written languages - in fact, includes musical alphabets and pictorial alphabets
formal language dedicated to the expression of annotation
sequence of symbols such that the only symbols are '0' and '1'
tree-based parsing structure that formalizes a concrete expression according to the rules of a concrete syntax
constructed languages are the product of explcit design, rather than natural evolution
constructed language that approximates some natural language while reducing and/or eliminating complexities and ambiguities
formal language designed to have language aspects used to express specific kinds of knowledge assets
grammar that describes how a language is actually used
markup language used to (re)assert the semantics of sentences in the embedded language
system for the encoding elements of an alphabet using a second alphabet
the ASCII encoding of basic western alphabet characters using 7 bit binary symbols
the trivial encoding that preserves the original symbols
formal language designed to express functions
several machine executable languages either have or embed a sub-language that is an expression language
prescriptive grammar that consists in a collection of (production) rules that define, intensionally, all and only the possible sentences of a language
one may distinguish between formal grammar - grammars that allow to recognize if a sentence is part of the language - and generative grammars - grammars with rules that allow to construct new sentences
set of rules and constraints that allow to recognize and/or construct the valid sentences of a language
grammar specification
specification of a grammar, itself expressed in some (meta)language
The Java 1.8 grammar, expressed using the ANTLRv4 metalanguage, available at https://github.com/antlr/grammars-v4/tree/master/java/java8
Syntaxes are 'reconstructed' from natural languages, but 'designed' in the case of constructed languages
grammar that is proper part of another grammar
island grammars define languages embedded in other languages
knowledge representation and reasoning language
machine executable language used in knowledge expressions, to express works of knowledge
grammar specification that is expressed using a schema language
The schema of the "Decision Modeling and Notation Language v1.2", available at https://www.omg.org/spec/DMN/20180521/DMN12.xsd, expressed using the XML Schema Definition Language
lexical entry
unit of analysis of a lexicon that consists of a set of forms that are grammatically related and a set of base meanings that are associated with all of these forms
A lexical entry is a word, multiword expression or affix with a single part-of-speech, morphological pattern, etymology and set of senses.
complete set of the meaningful atomic signs that are or can be used in a language
TODO: In DOL, signatures are 'set of symbols', but are treated as 'mathematical' rather than 'linguistic' entities (i.e. concepts vs terms).
machine-executable language
machine-readable language equipped with semantics that allows to drive the behavior of a software agent
(expressions in) languages of this kind can be interpreted or compiled into the native language of the underlying machine - virtual or physical
machine-readable language
formal language that has a concrete syntax which allows a software agent to parse and serialize expressions in that language
machine-readable language that embeds another language, impacting the processing but not the semantics of that language
concrete syntax that consists primarily of structural rules
machine readable, serializable language that has at least one concrete syntax that is based on a meta-format
any language that supports an XML based serialization, such as BPMN or RuleML
formal grammar used to define languages that are used in the expression of formal grammars
formal language dedicated to the expression of ontologies and assertional knowledge bases
an internal representation that formalizes an agent's perception of the structure of some expression, according to the rules of some grammar
parsing structures are the (intermediary) product of lifting operations
being mainly used for internal computation, parsing structures themselves are most often ASGs whose edges and nodes represent the structure of the target expression according to the grammatical rules. Nevertheless, parsing structures themselves could be materialized using an appropriate meta-language
grammar that specificies how a language should be used correctly
markup language that drives the manifestation of expressions in the embedded language
markup language that is imperative in nature
formal, executable language used in the specification of information processing tasks
from a knowledge representation perspective, programming languages are designed to express algorithms
programming languages are usually imperative
formal language dedicated to the expression of rules, norms and policies
rule languages can be further categorized depending on the nature of the rules they can express (e.g. production, vs inference, vs deontic, etc...)
formal language used in the specification of (formal) grammars, schemas and metamodels
the term is broader than the common denotation of '(XML) schema language'
serialization
formal grammar that includes at least one rule that impacts the structural aspects of the conformant sentences, but not the semantics
In computer science, abstract syntaxes are used to construct Parsers and Lexers
markup language used to define the structure of expressions in the embedded language, making them decomposable
sequence of symbols reconstructed from the inscriptions on an artifact
sequence of characters that can be segmented into atomic groups with recognizable type, function and/or interpretation (lexemes or tokens)
provides the rules to serialize ASTs of a given language into forms that can be engraved on carrier artifacts
has a sublanguage that supports aspects that would not otherwise be supported by this language
has an extension set of valid sentences that is defined by the rule of the target grammar
has a grammar with an identifiable, closed subset of rules that define the target sub-language
has a set of linguistic elements that can be formed into valid sentences of the language according to the language's grammar
serializes
provides syntactical rules to manifest sentences of the target language in forms that can be engraved on a carrier
allows expressions in the target language to be part of expressions in this language
supports a serialization that 'relies on the rules of' (=uses) the given meta-format to arrange its terms
comprises expressions that can be arranged according to the given concrete syntax
can be formalized according to the rules of the target abstract syntax
it is quite rare, but not impossible, for a language to have two distinct but isomorphic (abstract) grammars
if a language L supports a syntax S, and S is concretized by a concrete syntax C, then L supports serialization C
follows the rules of, and thus is valid according to, some grammar
contains symbols drawn from a given alphabet
contains expression fragments that are annotations, and use an annotation language as primary language
contains symbols encoded using a given encoding scheme
uses a serialization that depends on the target meta-format
uses terms that are defined (linguistically and semantically) in the target lexicon
is or contains an expression that, when parsed, results in a (forest of) AST, and (at least one of) the AST is structured according to the syntax of the target language
the primary language of an expression E can be a named language L, or a refinement/extension of a named language that embeds some other language S, in which case E uses S as a sub-language
is or contains an expression that is valid according to the rules of a given language profile
is or contains a concrete expression that is concretized according to the rules of a given concrete syntax
if a resource uses a serialization of a given language, that resource must be consistent with using that language
contains an expression in the target language that is proper part of an expression in a different language
If a language L embeds another language S, every expression in L can potentially contain fragments in S (e.g. DMN vs FEEL). In other words, if an expression in L embeds a fragment in S, there exist at least one expression in L that uses S as a sub-language.
Contemporary Italian, as of 2017, as established by the Italian 'Accademia della Crusca'
The 2nd officially released version of the Ontology Web Language
The extension of a language is the class of sentences that is defined by the grammar of the language, using the supported lexicon/a
in API4KP languages are knowledge, to the extent that they can be learned and used by agents