START / FORMAT

P2LRN format

Identity, package anatomy, graph, entrypoints, resources, profiles, integrity and authoring project.

What you will get

Understand what's inside a .p2lrn, which parts are canonical, and what information should continue to live outside the package.

Primary identifiers

P2LRN

Current name of the format.

.p2lrn

Package extension.

https://p2lrn.org/

Canonical namespace.

p2lrn.project.json

Editable authoring project.

p2lrn:*

Public events namespace.

Practical anatomy

A final package brings together manifest, graph entities, representations, and resources. The editable project adds the information necessary for round-trip and reconstruction.

conceptual package map
course.p2lrn
├─ manifest
│  ├─ format / version
│  ├─ profiles
│  └─ contentRoot
├─ graph
│  ├─ course
│  ├─ units
│  ├─ activities
│  └─ relations
├─ resources
│  └─ embedded / referenced payloads
└─ integrity
   └─ digests / verified paths

Graph and entry points

The units, activities and relationships form a graph. Entrypoints define where the experience begins if the host does not request a specific node.

Profiles

Profiles declare specialized capabilities or rules. The package may require a profile when its correct interpretation depends on it, or mark it as optional when it provides additional behavior.

Integrity and reconstruction

If a resource or JSON that is part of the content root changes, digests and contentRoot. Opaque external payloads that must be preserved are maintained byte by byte when the contract requires it.

No hagas esto

Do not modify files within the package without recalculating integrity. Use Toolkit to open, edit and rebuild.

Authoring project

p2lrn.project.json preserves portable IDs, graph order, entrypoints, profiles and metadata necessary to open a package as a workspace and rebuild it without logical loss.

Authorship and content rights

The course can maintain four portable data using the extension https://p2lrn.org/ext/course-rights/1. This is metadata about the content, not about the user's account or the system that created the package.

author

Author of the content. Person or organization responsible for the content.

createdAt

Creation date. Original day of creation in format AAAA-MM-DD.

license

License · Conditions of use and distribution. Text or license identifier that defines how the content may be used or distributed.

copyrightHolder

Copyright · Rights holder. Person or organization that owns the rights.

No AI or creator tool fields are added.

The schema only supports these four fields. New courses can receive their creation date when they are created; an imported course retains its existing value or lack thereof.

Turn the specification into a real package

The guide Create packages shows the complete flow from an empty workspace to build, validation, multipart and playback in the actual viewer.

What belongs to the host

  • Identity and authentication.
  • Roles, permits and registration.
  • Credentials and secrets.
  • Durable persistence of the platform's own progress.
  • Telemetry, billing and business logic.

Do you need help with this point?

The complete form is centralized so as not to repeat it in each technical article.

Contact