Skip to content

Commit 005de7a

Browse files
committed
Expanded and clarified section on executableName, added motivation #9
1 parent 6342e79 commit 005de7a

1 file changed

Lines changed: 27 additions & 2 deletions

File tree

README.md

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,34 @@ interface type, most are a subclass of `schema:SoftwareApplication`.
5555
## Software types profile: Properties
5656

5757
### Executable name
58-
The name of the executable within a certain run-time context (e.g. an executable filename or name of an importable module). Examples of this property are shown in the code snippets A and B.
5958

60-
It should typically not contain any platform/runtime-specific extensions (``.exe``,``.so``,``.dll``,``.dylib``,``.py``, ``.sh``).
59+
The name of the executable within a certain run-time context (e.g. an
60+
executable filename or name of an importable module). This documents on a
61+
fairly high level by what name software is invoked from a certain run-time
62+
context. The run-time context itself is turn loosely determined by properties
63+
such as ``schema:runtimePlatform`` and ``schema:operatingSystem``.
64+
65+
We include this property to make a clear distinction between the human readable
66+
name of the software, and the identifier used in invocation of the software.
67+
The two may regularly differ with one being more verbose or have stricter
68+
casing than the other.
69+
70+
Examples for this property are:
71+
72+
* The name of the invoked executable as invoked from the command line
73+
* The name of the library as used in the linking stage for compiled languages
74+
* The highest-level name of the module as invoked in an ``import`` or ``include`` statement in languages such as Python, R, Perl, Java.
75+
* The name of the package as passed to a certain package manager (for ``SoftwarePackage``)
76+
* The name of the container as known to a certain container registry (for ``SoftwareImage``)
77+
78+
Examples of this property are also shown in the code snippets A and B.
79+
80+
Note that the executable name should typically not contain any
81+
platform/runtime-specific extensions which may differ across systems
82+
(``.exe``,``.so``,``.dll``,``.dylib``). However, such extensions may be
83+
included if they are static over all possible systems and needed to invoke the
84+
software (``.jar``,``.sh``) and a necessary component in invoking the software
85+
from a specific context.
6186

6287
## How are software types terms used with codemeta?
6388

0 commit comments

Comments
 (0)