Specification
The PURL (Package-URL) specification has been standardized with ECMA-427. The content of ECMA-427 is a subset of the overall PURL specification but its content defines the normative standard. Some elements of the specification that are not currently included in ECMA-427 are the How-to guides, the PURL Test Schema, the PURL test cases, and the data for registered PURL Type definitions. A reference to the "PURL standard" is always a reference to ECMA-427. A reference to the "PURL specification" may refer to information from ECMA-427 or from the broader PURL specification which is maintained in the purl-spec repository on GitHub.
The key elements of ECMA-427 are:
- Introduction: This text is also available on this website as the Introduction above.
- Clause 1 - Scope: A brief statement of the ECMA-427 scope.
- Clause 2 - Conformance: This clause defines conformance to the PURL standard.
- Clause 3 - Normative References: This clause lists 3 external documents that are normative references for the PURL standard.
- Clause 4 - Overview: This is a non-normative overview of the PURL standard.
- Clause 5 - Package-URL Specification: This text is also referred to as the Core Specification on this website.
- Clause 6 - Package-URL Type Definition Schema: This text is a human-friendly version of the JSON schema. You can also access the JSON Schema and an interactive HTML version of the Schema from the Schemas page below.
This PURL section of the website includes the following documentation that is not currently included in ECMA-427:
- PURL qualifiers guidance: Information about commonly used PURL qualifiers key=value pairs.
- How to build a PURL: Instructions for building a PURL.
- How to parse a PURL: Instructions for parsing a PURL.
- PURL test overview: Overview of PURL test groups, test types and test cases.