Appearance
Examples
FreshA collection of comprehensive, grounded example documents demonstrating MD-LD capabilities across real-world domains. All examples are complete, working MD-LD documents that parse and round-trip safely.
Getting Started Examples
Minimal
The absolute minimum: basic properties with typed values (xsd:date, xsd:integer, xsd:decimal, xsd:boolean), subject declarations, and simple links. Perfect for first-time learners.
markdown
[my] <tag:you@example.com,2026:>
## Resource {=my:resource .prov:Entity label}
[My first resource] {my:title}
[2026-05-06] {my:date ^^xsd:date}
[42] {my:count ^^xsd:integer}
[true] {my:active ^^xsd:boolean}
[3.14] {my:ratio ^^xsd:decimal}
## Related {=my:related .prov:Entity label}
[resource] {+my:resource ?my:relatedTo}Personal Journal Entry
markdown
[my] <tag:you@example.com,2026:>
[j] <my:journal/>
# 2026-05-06 {=j:2026-05-06 .j:Entry j:date ^^xsd:date label}
## A good walk {label}
Mood: [happy] {j:mood}
Energy: [8] {j:energy ^^xsd:integer}
Met [Bob] {+my:bob ?j:met} at [Central Park] {+my:central-park ?j:location}.
The weather was [sunny] {j:weather}.Domain Examples
Personal and Temporal
Journal — Personal journaling with temporal hierarchy (year, month, week, day), activities, and temporal relationships. Demonstrates hierarchical subject chaining, temporal properties (prov:startedAtTime, prov:endedAtTime), and activity tracking.
Tasks — Task management system combining RDFS class definitions, property constraints, and status tracking. Shows ontology definition patterns with rdfs:Class, property ranges, and task lifecycle management.
markdown
[my] <tag:you@example.com,2026:>
# Project Alpha {=my:alpha .my:Project label}
Tasks: [design] {+#design ?my:task sh:name}, [build] {+#build ?my:task sh:name}.
## Design {=#design .my:Task label}
Status: [done] {my:status}
Assigned: [Alice] {+my:alice ?my:assignee}
## Build {=#build .my:Task label}
Status: [in-progress] {my:status}Research and Data Science
Medical AI Research — Scientific paper demonstrating:
- Multi-author attribution with roles and contributions
- Dataset versioning (primary to augmented to derived)
- Research activities with temporal boundaries
- Qualified associations tracking who did what
markdown
[res] <tag:lab@example.org,2026:>
# Deep Learning Study {=res:study .prov:Activity label}
Started: [2026-01-01] {prov:startedAtTime ^^xsd:date}
Ended: [2026-06-01] {prov:endedAtTime ^^xsd:date}
Authors:
- Dr. Chen {+res:chen ?prov:wasAssociatedWith .prov:Person label}
- Dr. Park {+res:park ?prov:wasAssociatedWith .prov:Person label}
Used dataset [ImageNet v2] {+res:imagenet-v2 ?prov:used label}.
Generated [Model v3] {+res:model-v3 ?prov:generated label}.Project and Business
Website Redesign Project — Complex project management with team structure, phases, dependencies, and complete activity provenance. Shows:
- Team roles and responsibilities
- Multi-phase workflow (planning, design, development)
- Activity sequencing with
prov:wasInformedBy - Entity usage and generation tracking
Task Management System — Comprehensive task system combining RDF/RDFS for ontology definition with practical task modeling.
Complex Systems and Missions
Cassini-Huygens Mission — NASA/ESA space mission with detailed timeline:
- Multi-agent systems (orbiter + probe acting on behalf of organizations)
- Long-running activities spanning years
- Precise temporal markers (
xsd:dateTime) - Entity generation tracking through mission phases
markdown
[esa] <tag:esa@example.org,2026:>
# Cassini-Huygens {=esa:cassini .prov:Entity label}
## Launch {=esa:launch .prov:Activity label}
Started: [1997-10-15T00:00:00Z] {prov:startedAtTime ^^xsd:dateTime}
By: [NASA] {+esa:nasa ?prov:wasAssociatedWith label}
## Saturn Arrival {=esa:saturn-arrival .prov:Activity label}
Started: [2004-07-01T00:00:00Z] {prov:startedAtTime ^^xsd:dateTime}
Informed by: [launch] {+esa:launch ?prov:wasInformedBy}Ontology Examples
RDF Fundamentals
Basic RDF concepts: class definitions, property ranges, and type hierarchies using RDFS vocabulary.
markdown
[ont] <tag:you@example.com,2026:ontology/>
## Person {=ont:Person .rdfs:Class label}
> A human being in the knowledge graph. {comment}
## Organization {=ont:Organization .rdfs:Class label}
> A formal group of people. {comment}
## worksAt {=ont:worksAt .rdf:Property label}
Domain: [Person] {+ont:Person ?rdfs:domain}
Range: [Organization] {+ont:Organization ?rdfs:range}PROV-O Patterns
Complete provenance vocabulary:
markdown
[prov] <tag:you@example.com,2026:provenance/>
## Report {=prov:report .prov:Entity label}
## Analysis {=prov:analysis .prov:Activity label}
Started: [2026-05-06T09:00:00Z] {prov:startedAtTime ^^xsd:dateTime}
Ended: [2026-05-06T11:00:00Z] {prov:endedAtTime ^^xsd:dateTime}
## Analyst {=prov:analyst .prov:Person label}
{=prov:report}
Generated by [analysis] {+prov:analysis ?prov:wasGeneratedBy}
Attributed to [analyst] {+prov:analyst ?prov:wasAttributedTo}SHACL Validation
Self-documenting validation shapes:
markdown
[my] <tag:you@example.com,2026:>
## Person Shape {=my:PersonShape .sh:NodeShape label}
Validates all [Person] {+prov:Person ?sh:targetClass} nodes with:
[name rule] {+my:PersonShape-name ?sh:property sh:name} and
[email rule] {+my:PersonShape-email ?sh:property sh:name}.
### Name rule {=my:PersonShape-name .sh:PropertyShape}
Path: [label] {+label ?sh:path}
Required: [1] {sh:minCount sh:maxCount ^^xsd:integer}
> Every person must have exactly one name. {sh:message}
### Email rule {=my:PersonShape-email .sh:PropertyShape}
Path: [my:email] {+my:email ?sh:path}
Required: [1] {sh:minCount ^^xsd:integer}
> Every person must have an email address. {sh:message}XSD Datatypes Reference
markdown
[types] <tag:you@example.com,2026:>
## Datatypes {=types:examples label}
String: [Hello, world] {types:str ^^xsd:string}
Integer: [42] {types:int ^^xsd:integer}
Decimal: [3.14] {types:dec ^^xsd:decimal}
Double: [3.14e2] {types:dbl ^^xsd:double}
Boolean: [true] {types:bool ^^xsd:boolean}
Date: [2026-05-06] {types:date ^^xsd:date}
DateTime: [2026-05-06T14:30:00Z] {types:dt ^^xsd:dateTime}
Time: [14:30:00Z] {types:time ^^xsd:time}
Duration: [P1Y6M] {types:dur ^^xsd:duration}
URI: [https://example.org/] {types:uri ^^xsd:anyURI}
English text: [Hello] {types:en @en}
French text: [Bonjour] {types:fr @fr}Advanced Patterns
LLM Time Workflow
Complete LLM-assisted workflow with provenance tracking, temporal boundaries, and activity sequences.
markdown
[llm] <tag:workflow@example.com,2026:>
## LLM Analysis Session {=llm:session-2026-05-06 .prov:Activity label}
Started: [2026-05-06T14:00:00Z] {prov:startedAtTime ^^xsd:dateTime}
Model: [claude-opus-4-6] {llm:model}
Prompt tokens: [1250] {llm:promptTokens ^^xsd:integer}
Input: [customer-data.md] {+llm:input-doc ?prov:used label}
Output: [analysis-report.md] {+llm:output-doc ?prov:generated label}Dogfood — MD-LD Describing Itself
MD-LD describing its own ontology:
markdown
[mdld] <tag:mdld@example.com,2026:>
# MD-LD Specification {=mdld:spec .prov:Entity label}
Version: [1.0] {mdld:version}
Format: [Markdown Linked Data] {mdld:format}
## parse function {=mdld:parse .rdf:Property label}
> Parses MD-LD text to RDF quads. {comment}
Domain: [string] {+xsd:string ?rdfs:domain}Key Features Demonstrated
- Subject Declaration (
{=IRI}) — Persistent context for document focus - Subject Introduction (
{+IRI}) — Introducing new entities inline - Typed Values (
^^xsd:type) — Type-safe literals - Language Tags (
@en,@es,@fr) — Multilingual content - Class Annotations (
.Class) — RDF typing - Property Chains (
?predicate) — Linking subjects and objects - Fragment Subjects (
{=#fragment}) — Document structure with internal links - Reverse Relations (
!predicate) — Inverse connections - PROV-O Integration — Complete activity, entity, and agent provenance
- SHACL Shapes — Validation constraints and schema documentation
- Round-trip Safety — Parse, generate, and parse cycles preserve semantics