Packet

Defines an XMP packet associated with a Document or Property. See KHRXMP.

Hierarchy

Static properties

EXTENSION_NAME: string

Properties

extensionName: typeof KHR_XMP_JSON_LD
parentTypes: typeof PARENT_TYPES
propertyType: 'Packet'

Methods

  • getContext(): Record<Term, TermDefinition>
  • setContext(context: Record<Term, TermDefinition>): Packet
  • dispatchEvent(event: BaseEvent): this
  • Dispatches an event on the GraphNode, and on the associated Graph. Event types on the graph are prefixed, "node:[type]".

  • dispose(): void
  • Removes both inbound references to and outbound references from this object. At the end of the process the object holds no references, and nothing holds references to it. A disposed object is not reusable.

  • equals(other: Property, skip?: Set<string>): boolean
  • Returns true if two properties are deeply equivalent, recursively comparing the attributes of the properties. Optionally, a 'skip' set may be included, specifying attributes whose values should not be considered in the comparison.

    Example: Two Primitives are equivalent if they have accessors and materials with equivalent content — but not necessarily the same specific accessors and materials.

  • addEventListener(type: string, listener: EventListener<T>): this
  • removeEventListener(type: string, listener: EventListener<T>): this
  • getExtras(): Record<string, unknown>
  • Returns a reference to the Extras object, containing application-specific data for this Property. Extras should be an Object, not a primitive value, for best portability.

  • setExtras(extras: Record<string, unknown>): Property
  • Updates the Extras object, containing application-specific data for this Property. Extras should be an Object, not a primitive value, for best portability.

  • isDisposed(): boolean
  • Returns true if the node has been permanently removed from the graph.

  • fromJSONLD(jsonld: Record<string, unknown>): Packet
  • toJSONLD(): Record<string, unknown>
  • getName(): string
  • Returns the name of this property. While names are not required to be unique, this is encouraged, and non-unique names will be overwritten in some tools. For custom data about a property, prefer to use Extras.

  • Sets the name of this property. While names are not required to be unique, this is encouraged, and non-unique names will be overwritten in some tools. For custom data about a property, prefer to use Extras.

  • listParents(): Property[]
  • Returns a list of all properties that hold a reference to this property. For example, a material may hold references to various textures, but a texture does not hold references to the materials that use it.

    It is often necessary to filter the results for a particular type: some resources, like Accessors, may be referenced by different types of properties. Most properties include the Root as a parent, which is usually not of interest.

    Usage:

    const materials = texture
        .listParents()
        .filter((p) => p instanceof Material)
    
  • listProperties(): string[]
  • getProperty(name: string): Value | Record<string, unknown> | null
  • Returns the value of a property, as a literal or JSONLD object.

    Example:

    packet.getProperty('dc:Creator'); // → {"@list": ["Acme, Inc."]}
    packet.getProperty('dc:Title'); // → {"@type": "rdf:Alt", "rdf:_1": {"@language": "en-US", "@value": "Lamp"}}
    packet.getProperty('xmp:CreateDate'); // → "2022-01-01"
    
  • setProperty(name: string, value: Value | Record<string, unknown>): Packet
  • Sets the value of a property, as a literal or JSONLD object.

    Example:

    packet.setProperty('dc:Creator', {'@list': ['Acme, Inc.']});
    packet.setProperty('dc:Title', {
        '@type': 'rdf:Alt',
        'rdf:_1': {'@language': 'en-US', '@value': 'Lamp'}
    });
    packet.setProperty('model3d:preferredSurfaces', {'@list': ['vertical']});
    
Function symbol, where the argument and output are a box labeled 'glTF'.

Made by Don McCurdy. Documentation built with greendoc and published under Creative Commons Attribution 3.0.