Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Inspect the object model

world open.
isaac:Person[father -> abraham; label -> "Isaac"].
?- isaac[?Property -> ?Value].
?- isaac[frame#memberOf -> ?Class].
expect true: isaac[father -> abraham].

The first query returns the known ordinary property/value pairs: father and label. The second queries the reserved membership view and returns the Person class identifier.

The ordinary slot query does not silently return every internal record. FrameX’s reserved metadata properties provide explicit access to supported structural information. They allow useful meta-queries while retaining a bounded language.

FrameX 0.4.4 also supports class variables: ?- isaac:?Class. asks for membership directly. The reserved frame#memberOf view keeps the metadata relationship explicit in this example.

Meta-queries help explain what was loaded, inspect schemas, and build teaching tools. A variable property name makes dependency analysis less specific, so warnings and stratification may need a more conservative treatment than with named properties.

Try it

Add another ordinary property and predict which query changes. Explain why metadata and domain properties are kept distinguishable.