Download the PHP package isy-thl/european-learning-model without Composer

On this page you can find all versions of the php package isy-thl/european-learning-model. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package european-learning-model

European Learning Model

isy-thl/european-learning-model is a framework-independent PHP package for building European Learning Model (ELM) documents and deterministic unsigned JSON-LD. It currently focuses on European Digital Credentials (EDC), with shared ELM entities and incremental Learning Opportunities and Qualifications (LOQ) support.

The package produces document bytes. An application owns persistence, QDR delivery, HTTP, logging, and signing.

Current scope

The package currently provides:

The package does not provide:

EDC output is unsigned JSON-LD suitable for an application to pass unchanged to a separate signing boundary such as isy-thl/dss-csc-signing.

Requirements

Development and vocabulary-provider tests may also require PHP DOM/XML extensions.

Installation

The package namespace is IsyThl\EuropeanLearningModel.

Build an EDC credential

The main output is deterministic unsigned JSON-LD. Required child objects are constructed explicitly, and Credential::toJson() performs document validation before returning bytes.

Equivalent object state produces byte-for-byte identical output. Dates are normalized to UTC and emitted as Y-m-d\TH:i:s\Z; unset optional fields are omitted. JSON encoding uses explicit flags and JSON_THROW_ON_ERROR.

Profiles and validation

EDC and LOQ validation are separate profile concerns:

The PHP validators are preflight checks. Standards-based RDF/JSON-LD/SHACL execution remains an injectable boundary; the package does not claim full SHACL conformance from the PHP checks alone.

Profile resources are bundled under resources/profile/ and are loaded by explicit local resource boundaries. Constructors, validators, and serializers do not retrieve profiles or vocabularies from the network.

LOQ documents

LOQ documents serialize to deterministic unsigned JSON-LD:

The model distinguishes an embedded Core\Qualification from an external QualificationReference. References require persistent identifiers and keep their dataset namespace as validated application metadata.

LOQ XML status

XML export is not yet implemented.

Controlled vocabularies

For small, trusted vocabularies, use InMemoryVocabularyProvider and a VocabularyScheme. For injected RDF or JSON resources, use RdfVocabularyProvider or JsonLdVocabularyProvider with an application-owned VocabularyResourceFetcher. For large schemes, use the bounded search providers under Vocabulary, including the ESCO search provider.

Vocabulary access is explicit and injectable. The package does not own HTTP credentials, endpoints, caching policy, or live retrieval from constructors. See the working examples:

Development and testing

The test suite is plain PHP and does not require Moodle, QDR, DSS, CSC, or network services. Optional live vocabulary qualification requires network access and can be run separately:

License

GPL-3.0-or-later


All versions of european-learning-model with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1
ext-mbstring Version *
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package isy-thl/european-learning-model contains the following files

Loading the files please wait ...