-
Notifications
You must be signed in to change notification settings - Fork 27
supported metadata files and pom.xml detail #825
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev
Are you sure you want to change the base?
Conversation
docs/pom.md
Outdated
| @@ -0,0 +1,30 @@ | |||
| The following metadata fields can be extracted from a pom.xml file | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please add here the link to the specification (pom specification)
Also add the version of the specification (4.0.0)
docs/pom.md
Outdated
| @@ -0,0 +1,30 @@ | |||
| The following metadata fields can be extracted from a pom.xml file | |||
|
|
|||
| | Metadata category | Metadata Field | Value | | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's SOMEF metadata category and somef metadata field. The value is the POM.XML value
docs/pom.md
Outdated
| | **authors** | authors.email | developer.email | | ||
| | **authors** | author.url | developer.url | | ||
| | **authors** | author.organization | developer.organization | | ||
| | **authors** | author.type | Agent | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agent is not part of pom.
I think the author type being an Agent should be a separate table. Those are the things being inferred.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some changes required
docs/pom.md
Outdated
| | **requirements** | requirements.value | groupId.arfifactId | | ||
| | **requirements** | requirements.name | arfifactId | | ||
| | **requirements** | requirements.version | version | | ||
| | **requirements** | requirements.type | Software_application | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same with the type as with agents above.
docs/pom.md
Outdated
| | **authors** | author.url | developer.url | | ||
| | **authors** | author.organization | developer.organization | | ||
| | **authors** | author.type | Agent | | ||
| | **version** | version | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
here you are not adding the mapping in the pom file, which is version too.
docs/pom.md
Outdated
| @@ -0,0 +1,30 @@ | |||
| The following metadata fields can be extracted from a pom.xml file | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also add here that this was based on the CodeMeta crosswalk from the pom.xml (link)
docs/pom.md
Outdated
| | **requirements** | requirements.version | version | | ||
| | **requirements** | requirements.type | Software_application | | ||
| | **package_id** | package_id.value | group_id.artifact_id | | ||
| | **package_id** | package_id.type | String | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same with the package id.
docs/pom.md
Outdated
| | **package_id** | package_id.value | group_id.artifact_id | | ||
| | **package_id** | package_id.type | String | | ||
| | **versiond** | version.value | version | | ||
| | **versiond** | version.type | Release | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same
docs/supported_metadata_files.md
Outdated
| SOMEF can extract metadata from a wide range of files commonly found in software repositories. Below is a list of supported file types, along with clickable examples from real projects: | ||
|
|
||
| | File Name | Language | Description | Detail | Source Spec. | Version Spec.| Example | Based | | ||
| |--------------------|----------------------------|-------------|--------|--------|---------------|-----------|----------| |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know what Based is
|
|
||
| | File Name | Language | Description | Detail | Source Spec. | Version Spec.| Example | Based | | ||
| |--------------------|----------------------------|-------------|--------|--------|---------------|-----------|----------| | ||
| | `AUTHORS.md` | General | Lists contributors, authors, and affiliations relevant to the project | <div align="center">[🔍](./author.md)</div>| [📄](https://opensource.google/documentation/reference/releasing/authors/)| |[Example](https://gist.github.com/juliengdt/91d80c812e41be891dcf) | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Group above all the things that are General. Then go with the languages in alphabetical order.
docs/supported_metadata_files.md
Outdated
| |--------------------|----------------------------|-------------|--------|--------|---------------|-----------|----------| | ||
| | `AUTHORS.md` | General | Lists contributors, authors, and affiliations relevant to the project | <div align="center">[🔍](./author.md)</div>| [📄](https://opensource.google/documentation/reference/releasing/authors/)| |[Example](https://gist.github.com/juliengdt/91d80c812e41be891dcf) | | ||
| | `bower.json` | JavaScript (Bower) | Package descriptor used for configuring packages that can be used as a dependency for Bower-managed front-end projects. | <div align="center">[🔍](./bower.md)</div>| [📄](https://github.com/bower/spec/blob/master/json.md)| |[Example](https://github.com/juanjemdIos/somef/blob/master/src/somef/test/test_data/repositories/js-template/bower.json) | | ||
| | `cargo.toml` | Rust | Manifest file serves as the package descriptor used in Rust projects | <div align="center">[🔍](./cargo.md)</div> | [📄](hhttps://doc.rust-lang.org/cargo/reference/manifest.html)| |[Example](https://github.com/rust-lang/cargo/blob/master/Cargo.toml) | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
wrong url for the spec
docs/pom.md
Outdated
| | **runtime_platform** | runtime_platform.value | version | | ||
| | **runtime_platform** | runtime_platform.name | name | | ||
| | **runtime_platform** | runtime_platform.type | String | | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file is also missing a full example: the original file, and the link to the somef representation
docs/supported_metadata_files.md
Outdated
| |--------------------|----------------------------|-------------|--------|--------|---------------|-----------|----------| | ||
| | `AUTHORS.md` | General | Lists contributors, authors, and affiliations relevant to the project | <div align="center">[🔍](./author.md)</div>| [📄](https://opensource.google/documentation/reference/releasing/authors/)| |[Example](https://gist.github.com/juliengdt/91d80c812e41be891dcf) | | ||
| | `bower.json` | JavaScript (Bower) | Package descriptor used for configuring packages that can be used as a dependency for Bower-managed front-end projects. | <div align="center">[🔍](./bower.md)</div>| [📄](https://github.com/bower/spec/blob/master/json.md)| |[Example](https://github.com/juanjemdIos/somef/blob/master/src/somef/test/test_data/repositories/js-template/bower.json) | | ||
| | `cargo.toml` | Rust | Manifest file serves as the package descriptor used in Rust projects | <div align="center">[🔍](./cargo.md)</div> | [📄](hhttps://doc.rust-lang.org/cargo/reference/manifest.html)| |[Example](https://github.com/rust-lang/cargo/blob/master/Cargo.toml) | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing CodeMeta file parser
docs/bower.md
Outdated
| | **requirements** | requirements.name | "dependencies": {"paq":"version"} -> paq | | ||
| | **requirements** | requirements.version | "dependencies": {"paq":"version"} -> version | ||
| | **requirements** | requirements.dependency_type | dependencies -> runtime , devDependencies -> dev | | ||
| | **version** | version | version | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is inconsistent with other tables. Shouldn't it be version.value in the middle column?
docs/bower.md
Outdated
|
|
||
| | SOMEF metadata category | SOMEF metadata field | BOWER.JSON value | | ||
| |-------------------------|--------------------------------------------|---------------------| | ||
| | **authors** | authors.name | author.name | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
there is no value here?
docs/pom.md
Outdated
|
|
||
| | SOMEF metadata category | SOMEF metadata field | POM.XML value | | ||
| |-------------------------|--------------------------------------------|------------------| | ||
| | **authors** | authors.name | developer.name | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
shouldn't this be Agent.name? authors is a metadata category, but the attribute affects the type
so it would be authors[i].name where authors[i] is an Agent
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually if we map it to our json it's authors[i].result.name.
Maybe it's best just to do Agent.name (author[i].result is of type Agent)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We may need an extra column Describes:
| SOMEF metadata category | Category range | SOMEF metadata field | POM.XML value |
|---|---|---|---|
| authors | Agent (author[i].result is of type Agent) | Agent.name | developer.name |
Not sure about last colum of general md.