{"id":23158732,"url":"https://github.com/greendelta/olca-process-xls","last_synced_at":"2025-08-25T17:10:31.219Z","repository":{"id":65509673,"uuid":"589948312","full_name":"GreenDelta/olca-process-xls","owner":"GreenDelta","description":null,"archived":false,"fork":false,"pushed_at":"2024-06-14T11:26:03.000Z","size":111,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-12T21:47:18.411Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GreenDelta.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-01-17T10:14:42.000Z","updated_at":"2024-06-14T11:25:09.000Z","dependencies_parsed_at":"2023-02-12T11:01:03.743Z","dependency_job_id":"ce895b8d-d4f4-42ec-a274-9f8140a6cc51","html_url":"https://github.com/GreenDelta/olca-process-xls","commit_stats":{"total_commits":42,"total_committers":1,"mean_commits":42.0,"dds":0.0,"last_synced_commit":"3fd6791f77b8f53b5b3333f891ae5a2fd69f384d"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/GreenDelta/olca-process-xls","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GreenDelta%2Folca-process-xls","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GreenDelta%2Folca-process-xls/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GreenDelta%2Folca-process-xls/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GreenDelta%2Folca-process-xls/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GreenDelta","download_url":"https://codeload.github.com/GreenDelta/olca-process-xls/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GreenDelta%2Folca-process-xls/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272100683,"owners_count":24873442,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-25T02:00:12.092Z","response_time":1107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-17T22:27:19.134Z","updated_at":"2025-08-25T17:10:31.161Z","avatar_url":"https://github.com/GreenDelta.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# openLCA Excel format for process data sets\n\nThis repository contains the openLCA import and export logic for process data\nsets stored in Excel files. It can be also used as a stand-alone module (see\n[this example](src/test/java/org/openlca/io/xls/process/Example.java)).\n\n## Principles\n\n### Data linking\n\nEach process data set is stored in a separate file, an Excel workbook. Within a\nworkbook, things are identified by name. Reference data are listed in separate\nsheets of the workbook where then an ID (`UUID`) is assigned to the respective\nname. This ID is then used to link these data sets in an import. For example,\na process could link to the location `Aruba` in the `General information` sheet.\nThen, in the `Locations` sheet of the workbook there would be a row for this\nlocation that also contains the ID. When the data set is imported, the import\nfirst checks if there is a location with this `ID` in the database and links\nit when this is the case. Otherwise, it will create that location with the\ninformation available in the `Locations` sheet.\n\nFor flows, it is the same principle, but they are identified by name _and_\ncategory; except for product and waste flows in the `Allocation` tab where\nthese flows are referenced by name. Also, locations and currencies can be\nlinked by their respective codes alternatively.\n\nThis principle - internal by name and external by ID - makes the workbook\nreadable and the import reliable, but it requires that two things cannot have\nthe same name (except for flows) within a workbook (which is in general a\nuseful rule but maybe does not work in every use case).\n\n### Format\n\nIn a workbook the data is stored in several sheets where each sheet has a\nname that identifies the content of the sheet. There are two types of sheets:\nsheets that contain sections and sheets that contain a single table. A table\nsheet contains multiple entities of the same type. The first row of such a\ntable contains the field names of these entities. The order of the columns\nis not important but the field names are. For example, the exchanges of a\nprocess are stored in the table sheets `Inputs` and `Outputs`, also the\nreference data sheets `Flows`, `Units`, `Locations` etc. are table sheets.\nA table sheet should not contain empty rows between filled rows.\n\nIn a sheet with sections, a section always starts with a section header\nin the first column that is the identifier of the section in the sheet.\nIt can be followed by a set of field-value pairs or a table just like\nin a table sheet. In case of field-value pairs, the field identifiers\nare located in the first and the values in the second column of the sheet.\nThe section ends with the first empty row after the section header. For\nexample, the `Time` section in the `General information` sheet is a field-value\nsection with the fields `Valid from`, `Valid until`, and `Description`. The\nsection `Input parameters` in the sheet `Parameters` is a table section with\nthe fields `Name`, `Value`, `Uncertainty`, etc.\n\nBelow the possible sheets, sections, and fields are listed:\n\n* Sheet `General information`:\n  * Section `General information`\n    * Field `UUID`: the unique ID of the process, string\n    * Field `Name`: the name of the process, string\n    * Field `Category`:\n    * Field `Description`:\n    * Field `Version`:\n    * Field `Last change`:\n    * Field `Tags`:\n  * Section `Time`\n   * Field `Valid from`:\n   * Field `Valid until`:\n   * Field `Description`:\n  * Section `Geography`\n    * Field `Location`:\n    * Field `Description`:\n  * Section `Technology`\n    * Field `Description`:\n  * Section `Data quality`\n    * Field `Flow schema`:\n    * Field `Data quality entry`:\n    * Field `Process schema`:\n    * Field `Social schema`:\n\n* Sheet `Documentation`\n  * Section `LCI method`\n    * Field `Process type`:\n    * Field `LCI method`:\n    * Field `Modeling constants`:\n  * Section `Data source information`\n    * Field `Data completeness`:\n    * Field `Data selection`:\n    * Field `Data treatment`:\n    * Field `Data collection period`:\n    * Field `Sampling procedure`:\n    * Field `Use advice`:\n  * Section `Completeness`: flow completeness aspects\n    * each row under this section contains the aspect in the first column and\n      the completeness value in the second column\n  * Section `Sources`\n  * Section `Administrative information`\n    * Field `Intended application`:\n    * Field `Data set owner`:\n    * Field `Data set generator`:\n    * Field `Data set documentor`:\n    * Field `Publication`:\n    * Field `Access and use restrictions`:\n    * Field `Project`:\n    * Field `Creation date`:\n    * Field `Copyright`: `true`, if there is a copyright on the data set\n\n* Sheet `Inputs | Outputs`: inputs and outputs of the process\n  * Field `Is reference?`: `true | yes | x`, if this is the reference flow of the process\n  * Field `Flow`:\n  * Field `Category`:\n  * Field `Amount`:\n  * Field `Unit`:\n  * Field `Costs/Revenues`:\n  * Field `Currency`:\n  * Field `Uncertainty`:\n  * Field `(G)Mean | Mode`:\n  * Field `SD | GSD`:\n  * Field `Minimum`:\n  * Field `Maximum`:\n  * Field `Is avoided?`:\n  * Field `Provider`:\n  * Field `Data quality entry`:\n  * Field `Location`:\n  * Field `Description`:\n\n* Sheet `Allocation`\n  * Field `Default allocation method`: default allocation method as field-value\n    pair: possible values are `none`, `physical`, `economic`, `causal`\n  * Section `Physical \u0026 economic allocation`\n    * Field `Product`: name of the co-/product\n    * Field `Category`: category of the co-/product\n    * Field `Physical`: physical allocation factor of that co-/product\n    * Field `Economic`: economic allocation factor of that co-/product\n  * Section `Causal allocation`\n    * Field `Flow`: the name of the allocated flows\n    * Field `Category`: the category of the allocated flow\n    * Field `Direction`: the direction of the flow in the process\n    * Field `Amount`: amount of the allocated flow in the process (just for information)\n    * product column `i`: the respective allocation factors for the flow\n      related to the co-/product `i`\n\n* Sheet `Parameters`\n  * Section `Global input parameters`\n    * Field `Name`: the parameter name (must be a valid name that can appear in\n      formulas)\n    * Field `Value`: the parameter value\n    * Field `Uncertainty`: uncertainty distribution of the parameter; same\n      format as for inputs and outputs above\n    * Field `(G)Mean | Mode`\n    * Field `SD | GSD`\n    * Field `Minimum`\n    * Field `Maximum`\n    * Field `Description`\n  * Section `Global calculated parameters`\n    * Field `Name`\n    * Field `Formula`:\n    * Field `Description`\n  * Section `Input parameters`: input parameters of the process; same fields as\n    for global input parameters\n  * Section `Calculated parameters`: calculated / dependent parameters of the\n    process; same fields as for global calculated parameters above\n\n* Sheet `Flows`\n  * Field `UUID`\n  * Field `Name`\n  * Field `Category`\n  * Field `Description`\n  * Field `Version`\n  * Field `Last change`\n  * Field `Tags`\n  * Field `Type`:\n  * Field `CAS`:\n  * Field `Formula`:\n  * Field `Location`:\n  * Field `Reference flow property`:\n\n* Sheet `Flow properties`\n  * Field `UUID`\n  * Field `Name`\n  * Field `Category`\n  * Field `Description`\n  * Field `Version`\n  * Field `Last change`\n  * Field `Tags`\n  * Field `Type`:\n  * Field `Unit group`:\n\n* Sheet `Flow property factors`: this sheet is only required when there are\n  multiple flow properties of a flow\n  * Field `Flow`\n  * Field `Category`\n  * Field `Flow property`\n  * Field `Conversion factor`:\n\n* Sheet `Unit groups`\n  * Field `UUID`\n  * Field `Name`\n  * Field `Category`\n  * Field `Description`\n  * Field `Version`\n  * Field `Last change`\n  * Field `Tags`\n  * Field `Reference unit`:\n  * Field `Default flow property`:\n\n* Sheet `Units`\n  * Field `UUID`\n  * Field `Name`\n  * Field `Description`\n  * Field `Unit group`:\n  * Field `Synonyms`:\n  * Field `Conversion factor`:\n\n* Sheet `Locations`\n  * Field `UUID`\n  * Field `Name`\n  * Field `Category`\n  * Field `Description`\n  * Field `Version`\n  * Field `Last change`\n  * Field `Tags`\n  * Field `Code`:\n  * Field `Latitude`:\n  * Field `Longitude`:\n\n* Sheet `Actors`\n  * Field `UUID`\n  * Field `Name`\n  * Field `Category`\n  * Field `Description`\n  * Field `Version`\n  * Field `Last change`\n  * Field `Tags`\n  * Field `Address`:\n  * Field `City`:\n  * Field `Zip code`:\n  * Field `Country`:\n  * Field `E-Mail`:\n  * Field `Telefax`:\n  * Field `Telephone`:\n  * Field `Website`:\n\n* Sheet `Sources`\n  * Field `UUID`\n  * Field `Name`\n  * Field `Category`\n  * Field `Description`\n  * Field `Version`\n  * Field `Last change`\n  * Field `Tags`\n  * Field `Text reference`:\n  * Field `URL`:\n  * Field `Year`:\n\n* Sheet `Providers`\n  * Field `UUID`\n  * Field `Name`\n  * Field `Category`\n  * Field `Location`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgreendelta%2Folca-process-xls","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgreendelta%2Folca-process-xls","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgreendelta%2Folca-process-xls/lists"}