The Open Standard License is a more formal definition of my original intents and license behind my Standards and Specifications provided in this project.
This standard is still considered an Informal Draft because I have yet to perform legal review and as such it is considered incomplete.
This standard will be formalized pending legal advice and even the name is subject to change.
I thought that there might be confusion between the LGPL license in this project (which focuses on Source Code) and the Standards and Specifications provided within this project.
To make this difference explicitly clear, I am in the process of formalizing the license.
One big important part of this is this license focuses on Implementations of the Standard or Specification.
This is a substantially different concept to what is used in the LGPL and similar licenses.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Settings Specification:
The control settings "settings" file follows the FSS-0001 (Extended) format.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Entry Specification:
The Entry files follow the FSS-0005 (Somewhat Basic List) format.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Exit Specification:
The Exit files follow the FSS-0005 (Somewhat Basic List) format.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Entry Specification:
The controller program communicates use the FSS-000E Packet format.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Rule Specification:
The Rule files follow the FSS-000D (Basic Rule) format with IKI-0000 (Unrestricted IKI).
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Task Specification:
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Defines Specification:
The build settings "defines" file follows the FSS-0000 (Basic) format.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Dependencies Specification:
The build settings "dependencies" file follows the FSS-0000 (Basic) format.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Fakefile Specification:
The "fakefile" file follows the FSS-0005 (Somewhat Basic List) format with a sub-fomat of IKI-0002 (Simple Script).
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Settings Specification:
The build settings "settings" file follows the FSS-0001 (Extended) format.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Output Specification:
The following output to modes are supported\:
--- /dev/null
+Open Standard License 1.0 (Informal Draft).
+ March 2022.
+
+This is an informal document representing the not yet formalized Open Standard License 1.0.
+This license applies to the Standards and their Specifications and designates legal requirements on Implementations of the Standard and their respective Specifications.
+
+Terminology:
+- Standard: A set of rules and guidelines.
+- Specification: A specific interpretation or clarification of a Standard, such as the documentation that describes how to use or follow a Standard.
+- Implementation: The application of some Standard or Specification.
+- API: Application Programming Interface*.
+- ABI: Application Binary Interface**.
+- Service: Any action or labor performed by one party for another party (such as one person helping another person).
+- Protocol: A Standard focused on communication between two parties (often referring to Internet communication).
+
+* The API term is commonly mis-represented as Services or Protocols (such as "Web API").
+ An API instructs a programmer how to use a dependency when programming some software that utilizes said dependency.
+ An API is a Specification of some Implementation of a Standard be it a formally defined standard or an informally defined standard.
+ An API may be an Implementation of a Standard or a part of an Implementation of a Standard.
+ An API is, in effect, documentation.
+
+** The ABI term refers to an Application Binary Interface and represents the compiled implementation of some API.
+ An ABI may not always exist for some API, such as for pure scripting languages.
+ An ABI is neither a Specification nor a Standard.
+ An ABI is an Implementation of an API making it an Implementation of a Standard or Specification.
+
+Principles of the license:
+ - The Standard or Specification must be freely and publicly available to use and implement.
+ - All patents associated must be royalty-free for unrestricted use and must not impose any restrictions on any third party's implementation of this Standard beyond those described in the license.
+ - There must be no agreements or requirements for the execution of the license grant, including: NDA, grant, click-through, or any form of paperwork (including all non-paper forms of paperwork, such as digital forms).
+ - There must be no restrictions on the form of an Implementation of a Standard or Specification.
+ - The license shall prohibit any form of restricting any parties access to use, implement, extend, or deviate from this standard unless:
+ - Restricted by this license.
+ - Unless there is a breach of license conditions.
+ - The license is irrevocable unless there is a breach of the license conditions.
+ - The license does not grant any kind of warranty or liability under any circumstances to any party for any reason, be it direct, indirect, consequential, incidental, or in any other form.
+ - The license does not restrict any party from optionally providing their own warranty or liability on some Implementation but such warranties or liabilities are completely separate and independent of this license.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Featureless Settings Specification: 0000 - Basic:
Each Object starts at the beginning of a line and whitespace to the left of the Object is not treated as part of the object.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Featureless Settings Specification: 0001 - Extended:
Each Object starts at the beginning of a line and whitespace to the left of the Object is not treated as an object.
# fss-0002
#
+# license: open-standard-license-1.0
+#
# Note: This file is in fss-0002 format and as a result the example below has to be escaped (can potentially be confusing when reading this raw).
# The "This Does\\\:" below is actually "This Does\:" when processed by fss-0002.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Featureless Settings Specification: 0003 - Extended List:
Each Object starts at the beginning of a line and whitespace to the left of the Object is not treated as an object.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Featureless Settings Specification: 0004 - Very Basic List:
This is a fss-0002 Basic List whose Content is then processed as fss-0000 Basic.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Featureless Settings Specification: 0005 - Somewhat Basic List:
This is a fss-0002 Basic List whose Content is then processed as fss-0001 Extended.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Featureless Settings Specification: 0006 - Somewhat Extended List:
This is a fss-0003 Extended List whose Content is then processed as fss-0000 Basic.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Featureless Settings Specification: 0007 - Very Extended List:
This is a fss-0003 Extended List whose Content is then processed as fss-0001 Extended.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Featureless Settings Specification: 0008 - Embedded List:
This is a fss-0003 Extended List whose Content is then recursively processed as fss-0003 Extended List.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Featureless Settings Specification: 0009 - Reverse Mapping:
This is based off of fss-0000 Basic, except the Object is at the end of the line.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Featureless Settings Specification: 000A - Extended Reverse Mapping:
This is based off of fss-0001 Extended, except the Object is at the end of the line.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Featureless Settings Specification: 000B - Simple List:
This might be similar to fss-0008 - Embedded List, except it is an fss-0003 Extended List with a (non-recursive) fss-0002 Basic List inside the Content.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Featureless Settings Specification: 000C - IKI Text:
The IKI specifications are separate specifications from the FSS specification.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Featureless Settings Specification: 000D - Basic Rule:
This is a special case that follows fss-0002 (Basic List), and different FSS formats inside this Basic List.
# fss-0002
#
+# license: open-standard-license-1.0
+#
+#
# Note: This file is in fss-0002 format and as a result the example below has to be escaped (can potentially be confusing when reading this raw).
# The "header\:" in the example below is actually "header:" when processed by fss-0002.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
Featureless Settings Specifications:
A Keep It Simple Stupid specifications for configuration/settings files.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
IKI Specification: 0000 - Unrestricted:
This specification provides no restrictions on the vocabulary.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
IKI Specification: 0001 - Basic:
This specification provides a small set of vocabulary names meant to be associated with common uses, such as e-mail addresses and URLs.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
IKI Specification: 0002 - Simple Script:
This specification provides a small set of vocabulary names meant to be used for substitution in simple scripts.
# fss-0002
+#
+# license: open-standard-license-1.0
+#
IKI Specifications:
IKI is a minimally structured WIKI-like syntax meant to be simpler than WIKI syntax.