Change Password

Please enter the password.
Please enter the password. Between 8-64 characters. Not identical to your email address. Contain at least 3 of: uppercase, lowercase, numbers, and special characters.
Please enter the password.
Submit

Change Nickname

Current Nickname:
Submit

Apply New License

License Detail

Please complete this required field.

  • Ultipa Graph V4

Standalone

Please complete this required field.

Please complete this required field.

The MAC address of the server you want to deploy.

Please complete this required field.

Please complete this required field.

Cancel
Apply
ID
Product
Status
Cores
Applied Validity Period(days)
Effective Date
Excpired Date
Mac Address
Apply Comment
Review Comment
Close
Profile
  • Full Name:
  • Phone:
  • Company:
  • Company Email:
  • Country:
  • Language:
Change Password
Apply

You have no license application record.

Apply
Certificate Issued at Valid until Serial No. File
Serial No. Valid until File

Not having one? Apply now! >>>

Product Created On ID Amount (USD) Invoice
Product Created On ID Amount (USD) Invoice

No Invoice

v4.5
Search
    Français
    v4.5

      Gestion de Schema et de Property

      Cette section introduit des méthodes sur un objet Connection pour gérer les schemas et les propriétés des nodes et des edges dans un graphset.

      Chaque exemple se concentre uniquement sur l'utilisation de la méthode. Pour un exemple de code complet, veuillez vous référer à l'exemple complet.

      Schema

      showSchema()

      Récupère tous les nodes et les schemas des edges du graphset actuel.

      Paramètres :

      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Schema[] : La liste de tous les schemas dans le graphset actuel.

      // Récupère tous les schemas dans le graphset 'UltipaTeam' et affiche leurs noms et types
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      let resp = await conn.showSchema(requestConfig);
      const dataList = resp.data?.map((item) => ({
        Name: item.name,
        dbType: Number(item.totalNodes) >= 0 ? "DBNODE" : "DBEDGE",
      }));
      console.log(dataList);
      

      [
        { Name: 'default', dbType: 'DBNODE' },
        { Name: 'member', dbType: 'DBNODE' },
        { Name: 'organization', dbType: 'DBNODE' },
        { Name: 'default', dbType: 'DBEDGE' },
        { Name: 'reportsTo', dbType: 'DBEDGE' },
        { Name: 'relatesTo', dbType: 'DBEDGE' }
      ]
      

      getSchema()

      Récupère un schema de node ou d'edge du graphset actuel.

      Paramètres :

      • string : Nom du schema.
      • ULTIPA.DBType : Type du schema (node ou edge).
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Schema : Le schema récupéré.

      // Récupère le schema de node 'member' et le schema d'edge 'connectsTo' dans le graphset 'UltipaTeam', et affiche toutes leurs informations
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      let nodeInfo = await conn.getSchema(
        "member",
        ULTIPA.DBType.DBNODE,
        requestConfig
      );
      console.log("NodeSchema: ", nodeInfo.data);
      
      let edgeInfo = await conn.getSchema(
        "connectsTo",
        ULTIPA.DBType.DBEDGE,
        requestConfig
      );
      
      console.log("EdgeSchema: ", edgeInfo.data);
      

      {
       NodeSchema:  {
        name: 'member',
        description: '',
        properties: [
          {
            name: 'name',
            type: 'string',
            description: '',
            lte: 'false',
            extra: '{}'
          },
          {
            name: 'title',
            type: 'string',
            description: '',
            lte: 'false',
            extra: '{}'
          },
          {
            name: 'profile',
            type: 'string',
            description: '',
            lte: 'false',
            extra: '{}'
          },
          {
            name: 'age',
            type: 'int32',
            description: '',
            lte: 'false',
            extra: '{}'
          }
        ],
        totalNodes: '7'
      }
      EdgeSchema:  {}
      

      showNodeSchema()

      Récupère tous les schemas de nodes du graphset actuel.

      Paramètres :

      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Schema[] : La liste de tous les schemas de nodes dans le graphset actuel.

      // Récupère tous les schemas de nodes dans le graphset 'UltipaTeam' et affiche leurs noms
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      let dataOri = await conn.showNodeSchema(requestConfig);
      const schemaInfo = dataOri.data?.map((item) => item.name);
      console.log("SchemaName: ", schemaInfo);
      

      SchemaName:  [ 'default', 'member', 'organization' ]
      

      showEdgeSchema()

      Récupère tous les schemas d'edges dans le graphset actuel.

      Paramètres :

      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Schema[] : La liste de tous les schemas de nodes dans le graphset actuel.

      // Récupère tous les schemas d'edges dans le graphset 'UltipaTeam' et affiche leurs noms
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      let dataOri = await conn.showNodeSchema(requestConfig);
      const schemaInfo = dataOri.data?.map((item) => item.name);
      console.log("SchemaName: ", schemaInfo);
      

      SchemaName:  [ 'default', 'reportsTo', 'relatesTo']
      

      getNodeSchema()

      Récupère un schema de node du graphset actuel.

      Paramètres :

      • string : Nom du schema.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Schema : Le schema de node récupéré.

      // Récupère le schema de node 'member' dans le graphset 'UltipaTeam' et affiche ses propriétés
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      let resp = await conn.getNodeSchema("member", requestConfig);
      console.log("Property: ", resp.data?.properties);
      

      Property:  [
        {
          name: 'name',
          type: 'string',
          description: '',
          lte: 'false',
          extra: '{}'
        },
        {
          name: 'title',
          type: 'string',
          description: '',
          lte: 'false',
          extra: '{}'
        },
        {
          name: 'profile',
          type: 'string',
          description: '',
          lte: 'false',
          extra: '{}'
        },
        {
          name: 'age',
          type: 'int32',
          description: '',
          lte: 'false',
          extra: '{}'
        }
      ]
      

      getEdgeSchema()

      Récupère un schema d'edge du graphset actuel.

      Paramètres :

      • string : Nom du schema.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Schema : Le schema d'edge récupéré.

      // Récupère le schema d'edge 'relatesTo' dans le graphset 'UltipaTeam' et affiche ses propriétés
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      let resp = await conn.getEdgeSchema("relatesTo", requestConfig);
      console.log("Property: ", resp.data?.properties);
      

      Property:  [
        {
          name: 'type',
          type: 'string',
          description: '',
          lte: 'false',
          extra: '{}'
        }
      ]
      

      createSchema()

      Crée un nouveau schema dans le graphset actuel.

      Paramètres :

      • Schema : Le schema à créer ; les champs name et dbType doivent être définis, desc (pour description) et properties sont optionnels.
      • boolean : Indique s'il faut créer des propriétés, la valeur par défaut est false.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Response : Résultat de la requête.

      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      // Crée le schema de node 'utility' (avec propriétés) dans le graphset 'UltipaTeam' et affiche toutes ses informations
      
      const property1: ULTIPA.Header = {
        name: "name",
        type: ULTIPA.PropertyType.string,
      };
      const property2: ULTIPA.Header = {
        name: "purchaseDate",
        type: ULTIPA.PropertyType.datetime,
      };
      
      let nodePro = await conn.createSchema(
        {
          dbType: ULTIPA.DBType.DBNODE,
          name: "utility",
          properties: [property1, property2],
          desc: "Office utilities",
        },
        true,
        requestConfig
      );
      console.log("Node Schema Creation: ", nodePro.status.code_desc);
      console.log((await conn.getNodeSchema("utility", requestConfig)).data);
      
      // Crée le schema d'edge 'managedBy' (sans propriétés) dans le graphset 'UltipaTeam' et affiche toutes ses informations
      
      let edgePro = await conn.createSchema(
        {
          dbType: ULTIPA.DBType.DBEDGE,
          name: "managedBy",
        },
        false,
        requestConfig
      );
      console.log("Edge Schema Creation: ", edgePro.status.code_desc);
      console.log((await conn.getEdgeSchema("managedBy", requestConfig)).data);
      

      Node Schema Creation:  SUCCESS
      {
        name: 'utility',
        description: 'Office utilities',
        properties: [
          {
            name: 'name',
            type: 'string',
            description: '',
            lte: 'false',
            extra: '{}'
          },
          {
            name: 'purchaseDate',
            type: 'datetime',
            description: '',
            lte: 'false',
            extra: '{}'
          }
        ],
        totalNodes: '0'
      }
      Edge Schema Creation:  SUCCESS
      { name: 'managedBy', description: '', properties: [], totalEdges: '0' }
      

      createSchemaIfNotExist()

      Crée un nouveau schema dans le graphset actuel, gérant les cas où le nom du schema donné existe déjà en ignorant l'erreur.

      Paramètres :

      • Schema : Le schema à créer ; les champs name et dbType doivent être définis, description et properties sont optionnels.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Boolean : Indique si la création a eu lieu.

      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      // Crée un schema dans le graphset 'UltipaTeam' et affiche si la création répétée est ignorée
      
      let creation1 = await conn.createSchemaIfNotExist(
        {
          dbType: ULTIPA.DBType.DBNODE,
          name: "utility",
          desc: "Office utilities",
        },
        requestConfig
      );
      console.log("Ignore repeated creation: ", creation1.data);
      
      // Crée à nouveau le même schema et affiche si la création répétée est ignorée
      
      let creation2 = await conn.createSchemaIfNotExist(
        {
          dbType: ULTIPA.DBType.DBNODE,
          name: "utility",
          desc: "Office utilities",
        },
        requestConfig
      );
      console.log("Ignore repeated creation: ", creation2.data);
      

      Ignore repeated creation:  false
      Ignore repeated creation:  true
      

      alterSchema()

      Modifie le nom et la description d'un schema existant dans le graphset actuel par son nom.

      Paramètres :

      • Schema : Le schema existant à modifier ; les champs name et dbType doivent être définis.
      • Schema : La nouvelle configuration pour le schema existant ; au moins l'un des champs name et desc (pour description) doit être défini.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Response : Résultat de la requête.

      // Renomme le schema de node 'utility' en 'securityUtility' et enlève sa description dans le graphset 'UltipaTeam'
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      let resp = await conn.alterSchema(
        {
          dbType: ULTIPA.DBType.DBNODE,
          name: "utility",
          desc: "Office utilities",
        },
        {
          dbType: ULTIPA.DBType.DBNODE,
          name: "securityUtility",
          desc: "",
        },
        requestConfig
      );
      console.log(resp.status.code_desc);
      

      SUCCESS
      

      dropSchema()

      Supprime un schema du graphset actuel par son nom.

      Paramètres :

      • Schema : Le schema existant à supprimer ; les champs name et dbType doivent être définis.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Response : Résultat de la requête.

      // Supprime le schema de node 'utility' dans le graphset 'UltipaTeam'
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      let resp = await conn.dropSchema(
        {
          dbType: ULTIPA.DBType.DBNODE,
          name: "utility",
        },
        requestConfig
      );
      console.log(resp);
      

      {
        status: { code: 0, message: '', code_desc: 'SUCCESS' },
        statistics: { totalCost: 1, engineCost: 0, nodeAffected: 0, edgeAffected: 0 },
        req: undefined
      }
      

      Property

      showProperty()

      Récupère les propriétés personnalisées des nodes ou des edges du graphset actuel.

      Paramètres :

      • DBType : Type de la propriété (node ou edge).
      • string : Nom du schema.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Property[] : La liste de toutes les propriétés récupérées dans le graphset actuel.

      // Récupère toutes les propriétés des nodes dans le graphset 'UltipaTeam' et affiche leurs noms et les schemas associés
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      const nameList = (await conn.showNodeSchema(requestConfig)).data?.map(
        (item) => item.name
      )!;
      
      for (let i = 0; i < nameList.length; i++) {
        let resp = await conn.showProperty(
          ULTIPA.DBType.DBNODE,
          nameList[i],
          requestConfig
        );
        console.log(
          "Schema",
          nameList[i],
          "contains properties",
          resp.data?.map((item) => item.name)
        );
      }
      

      Schema default contains properties []
      Schema member contains properties [ 'name', 'title', 'profile' ]
      Schema organization contains properties [ 'name', 'logo' ]
      

      showNodeProperty()

      Récupère les propriétés personnalisées des nodes du graphset actuel.

      Paramètres :

      • string : Nom du schema.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Property[] : La liste de toutes les propriétés récupérées dans le graphset actuel.

      // Récupère toutes les propriétés personnalisées du schema de node 'member' dans le graphset 'UltipaTeam' et affiche le nombre
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      let NodePro = await conn.showNodeProperty("member", requestConfig);
      console.log(NodePro.data?.length);
      

      3
      

      showEdgeProperty()

      Récupère les propriétés personnalisées des edges du graphset actuel.

      Paramètres :

      • string : Nom du schema.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Property[] : La liste de toutes les propriétés récupérées dans le graphset actuel.

      // Récupère toutes les propriétés personnalisées du schema d'edge 'relatesTo' dans le graphset 'UltipaTeam' et affiche leurs noms
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      let edgePro = await conn.showEdgeProperty("relatesTo", requestConfig);
      console.log(edgePro.data?.map((item) => item.name));
      

      [ 'type' ]
      

      getProperty()

      Récupère une propriété personnalisée des nodes ou des edges du graphset actuel.

      Paramètres :

      • ULTIPA.DBType : Type de la propriété (node ou edge).
      • string : Nom du schema.
      • string : Nom de la propriété.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Property : La propriété récupérée.

      // Récupère la propriété de node @member.title dans le graphset 'UltipaTeam' et affiche toutes ses informations
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      let resp = await conn.getProperty(
        ULTIPA.DBType.DBNODE,
        "member",
        "title",
        requestConfig
      );
      console.log(resp.data);
      

      {
        name: 'title',
        type: 'string',
        lte: 'false',
        read: '1',
        write: '1',
        schema: 'member',
        description: '',
        extra: '{}',
        encrypt: ''
      }
      

      getNodeProperty()

      Récupère une propriété personnalisée des nodes du graphset actuel.

      Paramètres :

      • string : Nom du schema.
      • string : Nom de la propriété.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Property : La propriété récupérée.

      // Récupère la propriété de node @member.title dans le graphset 'UltipaTeam' et affiche toutes ses informations
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      let resp = await conn.getNodeProperty(
        "member",
        "title",
        requestConfig
      );
      console.log(resp.data);
      

      {
        name: 'title',
        type: 'string',
        lte: 'false',
        read: '1',
        write: '1',
        schema: 'member',
        description: '',
        extra: '{}',
        encrypt: ''
      }
      

      getEdgeProperty()

      Récupère une propriété personnalisée des edges du graphset actuel.

      Paramètres :

      • string : Nom du schema.
      • string : Nom de la propriété.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Property : La propriété récupérée.

      // Récupère la propriété d'edge @relatesTo.type dans le graphset 'UltipaTeam' et affiche toutes ses informations
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      let resp = await conn.getEdgeProperty("relatesTo", "type", requestConfig);
      console.log(resp.data);
      

      {
        name: 'type',
        type: 'string',
        lte: 'false',
        read: '1',
        write: '1',
        schema: 'relatesTo',
        description: '',
        extra: '{}',
        encrypt: ''
      }
      

      createProperty()

      Crée une nouvelle propriété pour un schema de node ou d'edge dans le graphset actuel.

      Paramètres :

      • ULTIPA.DBType : Type de la propriété (node ou edge).
      • string : Nom du schema, écrire * pour spécifier tous les schemas.
      • Property : La propriété à créer ; les champs name et type doivent être définis, description est optionnel.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Response : Résultat de la requête.

      // Crée deux propriétés pour le schema de node 'member' dans le graphset 'UltipaTeam' et affiche les codes d'erreur
      
      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      let resp1 = await conn.createProperty(
        ULTIPA.DBType.DBNODE,
        "member",
        { name: "startDate", schema: "member", type: ULTIPA.PropertyType.datetime },
        requestConfig
      );
      console.log(resp1.status.code_desc);
      
      let resp2 = await conn.createProperty(
        ULTIPA.DBType.DBNODE,
        "member",
        { name: "age", schema: "member", type: ULTIPA.PropertyType.int32 },
        requestConfig
      );
      console.log(resp2.status.code_desc);
      

      SUCCESS
      SUCCESS
      

      createPropertyIfNotExist()

      Crée une nouvelle propriété pour un schema de node ou d'edge dans le graphset actuel, gérant les cas où le nom de la propriété donné existe déjà en ignorant l'erreur.

      Paramètres :

      • ULTIPA.DBType : Type de la propriété (node ou edge).
      • string : Nom du schema, écrire * pour spécifier tous les schemas.
      • Property : La propriété à créer ; les champs name et type doivent être définis, description est optionnel.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Boolean : Indique si la création a eu lieu.

      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      // Crée une propriété pour le schema de node 'member' dans le graphset 'UltipaTeam' et affiche si la création répétée est ignorée
      
      let resp1 = await conn.createPropertyIfNotExist(
        ULTIPA.DBType.DBNODE,
        "member",
        { name: "startDate", schema: "member", type: ULTIPA.PropertyType.datetime },
        requestConfig
      );
      console.log("Ignore repeated creation: ", resp1.data);
      
      // Crée à nouveau la même propriété dans le graphset 'UltipaTeam' et affiche si la création répétée est ignorée
      
      let resp2 = await conn.createPropertyIfNotExist(
        ULTIPA.DBType.DBNODE,
        "member",
        { name: "startDate", schema: "member", type: ULTIPA.PropertyType.datetime },
        requestConfig
      );
      console.log("Ignore repeated creation: ", resp2.data);
      

      Ignore repeated creation:  false
      Ignore repeated creation:  true
      

      alterProperty()

      Modifie le nom et la description d'une propriété personnalisée existante dans le graphset actuel par son nom.

      Paramètres :

      • ULTIPA.DBType : Type de la propriété (node ou edge).
      • Property : La propriété existante à modifier ; les champs name et schema (écrire * pour spécifier tous les schemas) doivent être définis.
      • Property : La nouvelle configuration pour la propriété existante ; au moins l'un des champs name et description doit être défini.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Response : Résultat de la requête.

      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      // Renomme les propriétés 'name' associées à tous les schemas de node en `Name` dans le graphset 'UltipaTeam'
      
      let resp = await conn.alterProperty(
        ULTIPA.DBType.DBNODE,
        { name: "name", schema: "*" },
        { name: "Name", schema: "*" },
        requestConfig
      );
      console.log(resp.status.code_desc);
      

      SUCCESS
      

      dropProperty()

      Supprime une propriété personnalisée du graphset actuel par son nom et le schema associé.

      Paramètres :

      • ULTIPA.DBType : Type de la propriété (node ou edge).
      • string : Nom du schema.
      • string : Nom de la propriété.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Response : Résultat de la requête.

      let requestConfig = <RequestType.RequestConfig>{
        graphSetName: "UltipaTeam",
        useMaster: true,
      };
      
      // Supprime les propriétés 'startDate' associées à tous les schemas de node dans le graphset 'UltipaTeam' et affiche le code d'erreur
      
      let resp1 = await conn.dropProperty(
        ULTIPA.DBType.DBNODE,
        "*",
        "startDate",
        requestConfig
      );
      console.log(resp1.status.code_desc);
      
      // Supprime la propriété de node @member.name dans le graphset 'UltipaTeam' et affiche le code d'erreur
      
      let resp2 = await conn.dropProperty(
        ULTIPA.DBType.DBNODE,
        "member",
        "name",
        requestConfig
      );
      console.log(resp1.status.code_desc);
      

      SUCCESS
      SUCCESS
      

      Full Example

      import { ConnectionPool, ULTIPA } from "@ultipa-graph/ultipa-node-sdk";
      import { GraphExra } from "@ultipa-graph/ultipa-node-sdk/dist/connection/extra/graph.extra";
      import { getEdgesPrintInfo } from "@ultipa-graph/ultipa-node-sdk/dist/printers/edge";
      import { RequestType } from "@ultipa-graph/ultipa-node-sdk/dist/types";
      import { ListFormat } from "typescript";
      
      let sdkUsage = async () => {
        // Configuration de la connexion
        //Exemple URI : hosts="mqj4zouys.us-east-1.cloud.ultipa.com:60010"
        let hosts = [
          "192.168.1.85:60061",
          "192.168.1.86:60061",
          "192.168.1.87:60061",
        ];
        let username = "***";
        let password = "***";
        let connPool = new ConnectionPool(hosts, username, password);
      
        // Établit la connexion à la base de données
        let conn = await connPool.getActive();
        let isSuccess = await conn.test();
        console.log(isSuccess);
      
        // Configuration des requêtes
        let requestConfig = <RequestType.RequestConfig>{
          graphSetName: "UltipaTeam",
          useMaster: true,
        };
      
        // Crée le schema de node 'utility' (avec propriétés) dans le graphset 'UltipaTeam' et affiche le code d'erreur
        
          const property1: ULTIPA.Header = {
            name: "name",
            type: ULTIPA.PropertyType.string,
          };
          const property2: ULTIPA.Header = {
            name: "purchaseDate",
            type: ULTIPA.PropertyType.datetime,
          };
      
          let nodePro = await conn.createSchema(
            {
              dbType: ULTIPA.DBType.DBNODE,
              name: "utility",
              properties: [property1, property2],
              desc: "Office utilities",
            },
            true,
            requestConfig
          );
          console.log("Node Schema Creation: ", nodePro.status.code_desc);
          console.log((await conn.getNodeSchema("utility", requestConfig)).data);
      };
      
      sdkUsage().then(console.log).catch(console.log);
      
      Please complete the following information to download this book
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写