Façade-X Schema vocabulary

RDF vocabulary to access open-ended, heterogeneous resources.

Draft Community Group Report

Latest published version:
https://w3c-facade-x.github.io/facade-x-specs/schema.html
Latest editor's draft:
https://w3c-facade-x.github.io/facade-x-specs/dev/schema.html
Editors:
(Università Telematica San Raffaele - Roma)
(The Open University)
Feedback:
GitHub w3c-facade-x/facade-x-specs (pull requests, new issue, open issues)

Abstract

This document specifies the Façade-X Schema vocabulary.

Status of This Document

This specification was published by the Data Façades Community Group. It is not a W3C Standard nor is it on the W3C Standards Track. Please note that under the W3C Community Contributor License Agreement (CLA) there is a limited opt-out and other conditions apply. Learn more about W3C Community and Business Groups.

This is version 0.1 of this document, released on 2026-10-06, at https://w3c-facade-x.github.io/facade-x-specs/0.1/schema.html. This version will not change. The latest release is always at https://w3c-facade-x.github.io/facade-x-specs/schema.html. The editor's draft, which may include changes made after this release, is at https://w3c-facade-x.github.io/facade-x-specs/dev/schema.html. The issues addressed in this release, and those still open, are listed in the release notes.

This document is currently in active development.

GitHub Issues are preferred for discussion of this specification.

Set of Documents

This document is one of seven Façade-X specification documents produced by the Data Façades Community Group:

  1. Façade-X Overview
  2. Façade-X Primer
  3. Façade-X Schema vocabulary (this document)
  4. Façade-X Engine vocabulary
  5. Façade-X Data Access in SPARQL
  6. Façade-X Concepts and Metamodel Specification
  7. Façade-X Mappings

1. Introduction

This section is non-normative.

1.1 Namespaces

Prefix Namespace Description
fx http://sparql.xyz/facade-x/ns/ The Façade-X RDF vocabulary: configuration and primitives
xyz http://sparql.xyz/facade-x/data/ The Façade-X RDF vocabulary: namespace for derived data
rdf http://www.w3.org/1999/02/22-rdf-syntax-ns# [rdf-schema]
rdfs http://www.w3.org/2000/01/rdf-schema# [rdf-schema]
xsd http://www.w3.org/2001/XMLSchema# [xmlschema-2]

2. Issues

Issue 8: How to represent constraints? FX Schema Vocabulary

For example, for containers, the only properties allowed are:

ANY rdf:type fx:Slot, rdf:type

Or, there can be only one fx:Root ...

Issue 9: How to specify URI generation for Slots? FX Schema Vocabulary

At the moment, we do it with a Generator meta-data descriptors and a string template, e.g. xyz:[source string].

3. Façade-X Vocabulary

The namespace used for the Façade-X Vocabulary is: http://sparql.xyz/facade-x/ns/

Container | Slot | SlotString | SlotNumber | Type | Value | Root

3.1 Container

The class of containers

  • IRI: http://sparql.xyz/facade-x/ns/Container
  • Sub Class Of: http://www.w3.org/2000/01/rdf-schema#Class
  • Predicates: ANY instance of fx:Slot, rdf:type

3.2 Slot

The class of slots

  • IRI: http://sparql.xyz/facade-x/ns/Slot
  • Sub Class Of: rdfs:Property
  • Instances - Domain: http://sparql.xyz/facade-x/ns/Container
  • Instances - Range: http://sparql.xyz/facade-x/ns/Container [OR] http://sparql.xyz/facade-x/ns/Value

3.3 SlotNumber

The class of slots in the source data that are numbers

  • IRI: http://sparql.xyz/facade-x/ns/SlotNumber
  • Sub Class Of: http://sparql.xyz/facade-x/ns/Slot [AND] rdfs:ContainerMembershipProperty
  • Instances - Domain: http://sparql.xyz/facade-x/ns/Container
  • Instances - Range: http://sparql.xyz/facade-x/ns/Container [OR] http://sparql.xyz/facade-x/ns/Value
  • Generator: rdf:_[cardinal number]

3.4 SlotString

The class of slots in the source data that are strings

  • IRI: http://sparql.xyz/facade-x/ns/SlotString
  • Sub Class Of: http://sparql.xyz/facade-x/ns/Slot
  • Instances - Domain: http://sparql.xyz/facade-x/ns/Container
  • Instances - Range: http://sparql.xyz/facade-x/ns/Container [OR] http://sparql.xyz/facade-x/ns/Value
  • Generator: xyz:[source string]

3.5 Type

The class of types in the source data

  • IRI: http://sparql.xyz/facade-x/ns/Type
  • Sub Class Of: rdfs:Class
  • Generator: xyz:[source string]

3.6 Value

The class of values in the source data

  • IRI: http://sparql.xyz/facade-x/ns/Value
  • Sub Class Of: rdfs:Literal
  • Generator: xyz:[source string]

3.7 Root

The type of the main container. There can only be a single container of type fx:Root.

  • IRI: http://sparql.xyz/facade-x/ns/Root
  • Sub Class Of: rdfs:Class

4. Named Graphs

In Façade-X, named graphs are used to associate each data source with its container hierarchy. When a resource is processed, each of its data sources is assigned a distinct graph IRI. All triples belonging to that data source — its root container, slots, and values — are placed within the corresponding named graph. This allows multiple data sources to coexist within the same RDF dataset without ambiguity: the graph IRI acts as the identity of the data source, and querying or reasoning over a specific source is simply a matter of selecting its graph. For resources that contain a single data source, a single named graph is produced; for resources such as spreadsheets that contain multiple data sources (e.g. one per sheet), a named graph is produced for each.

5. Façade-X Vocabulary in OWL Manchester Syntax

The following provides a representation of the Façade-X vocabulary in OWL 2 Manchester Syntax. It is derived directly from the term definitions in the Façade-X Vocabulary section above.

Prefix: fx: <http://sparql.xyz/facade-x/ns/>
Prefix: xyz: <http://sparql.xyz/facade-x/data/>
Prefix: rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
Prefix: rdfs: <http://www.w3.org/2000/01/rdf-schema#>
Prefix: xsd: <http://www.w3.org/2001/XMLSchema#>
Prefix: owl: <http://www.w3.org/2002/07/owl#>

Ontology: <http://sparql.xyz/facade-x/ns/>


## Classes

Class: fx:Container
    Annotations:
        rdfs:label "Container",
        rdfs:comment "The class of containers."
    SubClassOf:
        rdfs:Class
    DisjointWith:
        fx:Slot,
        fx:Value,
        fx:Type

Class: fx:Slot
    Annotations:
        rdfs:label "Slot",
        rdfs:comment "The class of slots. Any instance of fx:Slot is a property
                      with domain fx:Container and range fx:Container or fx:Value."
    SubClassOf:
        rdfs:Property,
        rdfs:domain value fx:Container,
        rdfs:range value (fx:Container or fx:Value)
    DisjointWith:
        fx:Container,
        fx:Value,
        fx:Type

Class: fx:SlotNumber
    Annotations:
        rdfs:label "SlotNumber",
        rdfs:comment "The class of slots whose key is a cardinal number.
                      Any instance of fx:SlotNumber is also an instance of
                      fx:Slot and of rdfs:ContainerMembershipProperty."
    SubClassOf:
        fx:Slot,
        rdfs:ContainerMembershipProperty
    DisjointWith:
        fx:SlotString

Class: fx:SlotString
    Annotations:
        rdfs:label "SlotString",
        rdfs:comment "The class of slots whose key is a string.
                      Any instance of fx:SlotString is also an instance of fx:Slot."
    SubClassOf:
        fx:Slot
    DisjointWith:
        fx:SlotNumber

Class: fx:Type
    Annotations:
        rdfs:label "Type",
        rdfs:comment "The class of types in the source data."
    SubClassOf:
        rdfs:Class
    DisjointWith:
        fx:Container,
        fx:Slot,
        fx:Value

Class: fx:Value
    Annotations:
        rdfs:label "Value",
        rdfs:comment "The class of values in the source data."
    SubClassOf:
        rdfs:Literal
    DisjointWith:
        fx:Container,
        fx:Slot,
        fx:Type

Class: fx:Root
    Annotations:
        rdfs:label "Root",
        rdfs:comment "The type of the main container. There can only be a single container of type fx:Root."
    SubClassOf:
        fx:Container
    DisjointWith:
        fx:Slot,
        fx:Value,
        fx:Type

6. References

This section is non-normative.

[rdf-schema]
RDF Schema 1.1. Dan Brickley; Ramanathan Guha. W3C. 25 February 2014. W3C Recommendation. URL: https://www.w3.org/TR/rdf-schema/
[xmlschema-2]
XML Schema Part 2: Datatypes Second Edition. Paul V. Biron; Ashok Malhotra. W3C. 28 October 2004. W3C Recommendation. URL: https://www.w3.org/TR/xmlschema-2/