Aracılığıyla paylaş


Ontolojileri genişletme

Bu makalede , yeni DTDL özelliklerine sahip ontolojileri genişletme örnekleri için akıllı binalar için DTDL tabanlı RealEstateCore ontolojisi kullanılır. Ancak burada açıklanan teknikler geneldir ve Azure Digital Twins ile uyumlu herhangi bir DTDL özelliği (Özellik, İlişki, Bileşen) ile DTDL tabanlı bir ontolojinin herhangi bir bölümüne uygulanabilir.

Microsoft'un DTDL tabanlı RealEstateCore ontolojisi gibi endüstri standardı onlogies, IoT çözümünüzü oluşturmaya başlamak için harika bir yoldur. Sektör ontolojileri, etki alanınız için tasarlanmış ve Azure Digital Twins gibi Azure IoT hizmetlerinde kullanıma hazır olacak şekilde tasarlanmış zengin bir temel arabirim kümesi sağlar.

Ancak çözümünüzün endüstri ontolojisi kapsamında olmayan belirli gereksinimleri olabilir. Örneğin, dijital ikizlerinizi ayrı bir sistemde depolanan 3B modellere bağlamak isteyebilirsiniz. Bu durumda, özgün ontolojinin tüm avantajlarını koruyarak kendi yeteneklerinizi eklemek için bu ontolojilerden birini genişletebilirsiniz.

RealEstateCore alan hiyerarşisi

DTDL tabanlı RealEstateCore ontolojisinde, Boşluk hiyerarşisi çeşitli alan türlerini tanımlamak için kullanılır: Odalar, Binalar, Bölge vb. Hiyerarşi, bu modellerin her birinden çeşitli oda, bina ve bölge türlerini tanımlamak için genişletir.

Hiyerarşinin bir bölümü aşağıdaki diyagrama benzer.

RealEstateCore alan hiyerarşisinin bir bölümünü gösteren diyagram. Space, Room, ConferenceRoom ve Office öğelerini gösterir.

RealEstateCore ontology hakkında daha fazla bilgi için bkz . GitHub'da akıllı binalar için Digital Twins Tanım Dili tabanlı RealEstateCore ontology.

RealEstateCore alan hiyerarşisini genişletme

Bazen çözümünüz, endüstri ontolojisi kapsamında olmayan belirli gereksinimlere sahiptir. Bu durumda hiyerarşiyi genişletmek, endüstri ontolojisini ihtiyaçlarınıza göre özelleştirirken kullanmaya devam etmenizi sağlar.

Bu makalede, ontoloji hiyerarşisini genişletmenin yararlı olduğu iki farklı durum ele alınıyor:

  • Endüstri ontolojisinde bulunmayan kavramlar için yeni arabirimler ekleme.
  • Mevcut arabirimlere ek Özellikler, İlişkiler veya Bileşenler ekleme.

Yeni kavramlar için yeni arabirimler ekleme

Bu durumda, çözümünüz için gerekli olan ve endüstri ontolojisinde bulunmayan kavramlar için arabirimler eklemek istiyorsunuz. Örneğin, çözümünüz DTDL tabanlı RealEstateCore ontolojisinde temsil edilen başka oda türlerine sahipse, doğrudan RealEstateCore arabirimlerinden genişleterek bunları ekleyebilirsiniz.

Aşağıdaki örnek, RealEstateCore ontolojisinde bulunmayan "odak odalarını" temsil etmesi gereken bir çözüm sunar. Odak odası, kişilerin bir seferde birkaç saat boyunca bir göreve odaklanması için tasarlanmış küçük bir alantır.

Bu yeni kavramla sektör ontolojisini genişletmek için, endüstri ontolojisindeki arabirimlerden genişleyen yeni bir arabirim oluşturun.

Odak odası arabirimi eklendikten sonra genişletilmiş hiyerarşi yeni oda türünü gösterir.

Odak Odası'nın yeni eklenmesi dahil olmak üzere RealEstateCore alan hiyerarşisinin bir bölümünü gösteren diyagram.

Mevcut arabirimlere ek özellikler ekleme

Bu durumda, endüstri ontolojisindeki arabirimlere daha fazla Özellik, İlişki veya Bileşen eklemek istiyorsunuz.

Bu bölümde iki örnek göreceksiniz:

  • Mevcut bir sistemde zaten var olan boşlukların 3B çizimlerini görüntüleyen bir çözüm oluşturuyorsanız, her dijital ikizi 3B çizimiyle (kimlikle) ilişkilendirmek isteyebilirsiniz, böylece çözüm alan hakkındaki bilgileri görüntülediği zaman mevcut sistemden 3B çizimi de alabilir.
  • Çözümünüzün konferans odalarının çevrimiçi/çevrimdışı durumunu izlemesi gerekiyorsa, görüntüleme veya sorgularda kullanmak üzere konferans odası durumunu izlemek isteyebilirsiniz.

Her iki örnek de yeni özelliklerle uygulanabilir: drawingId 3B çizimi dijital ikizle ilişkilendiren bir özellik ve konferans odasının çevrimiçi olup olmadığını gösteren bir online özellik.

Genellikle endüstri ontolojisini doğrudan değiştirmek istemezsiniz çünkü gelecekte çözümünüzün güncelleştirmelerini dahil etmek istersiniz (bu da eklemelerinizin üzerine yazılır). Bunun yerine, bu tür eklemeler DTDL tabanlı RealEstateCore ontology'den genişletilen kendi arabirim hiyerarşinizde yapılabilir. Oluşturduğunuz her arabirim, üst RealEstateCore arabirimini ve üst arabirimini genişletilmiş arabirim hiyerarşinizden genişletmek için birden çok arabirim devralma kullanır. Bu yaklaşım, endüstri ontolojisini ve eklemelerinizi birlikte kullanmanızı sağlar.

Endüstri ontolojisini genişletmek için, endüstri ontolojisindeki arabirimlerden genişleyen kendi arabirimlerinizi oluşturun ve yeni özellikleri genişletilmiş arabirimlerinize ekleyin. Genişletmek istediğiniz her arabirim için yeni bir arabirim oluşturun. Genişletilmiş arabirimler DTDL ile yazılır (bu belgenin devamında yer alan Genişletilmiş Arabirimler için DTDL'ye bakın).

Hiyerarşinin yukarıda gösterilen bölümünü genişlettikten sonra genişletilmiş hiyerarşi aşağıdaki diyagrama benzer. Burada genişletilmiş Alan arabirimi, dijital ikizi drawingId 3B çizimle ilişkilendiren bir kimlik içeren özelliği ekler. Ayrıca, ConferenceRoom arabirimi konferans odasının çevrimiçi durumunu içerecek bir online özellik ekler. Devralma aracılığıyla ConferenceRoom arabirimi, RealEstateCore ConferenceRoom arabirimindeki tüm özellikleri ve genişletilmiş Alan arabirimindeki tüm özellikleri içerir.

Genişletilmiş RealEstateCore alan hiyerarşisini ve açıklandığı gibi daha fazla yeni eklemeyi gösteren diyagram.

Endüstri ontolojisindeki tüm arabirimleri, yalnızca yeni özellikler eklemeniz gerekenleri genişletmeniz gerekmez. Örneğin, Koridor arabirimine özellik gibi yeni bir arterial özellik eklemeniz gerekiyorsa, Room'dan da genişleten diğer arabirimleri genişletmeden bu arabirimi genişletebilirsiniz.

Arter özelliğine sahip genişletilmiş bir Koridor arabirimi içeren genişletilmiş bir RealEstateCore alan hiyerarşisini gösteren diyagram.

Genişletilmiş arabirimlerle ilişkiler

Genişletilmiş arabirimler, başlangıçta bir temel arabirimi hedeflemek üzere modellenmiş olsa bile ilişkiler için hedef olarak da kullanılabilir. Örneğin, DTDL tabanlı RealEstateCore ontolojisinde, Daire arabirimi bir Oda arabirimini hedefleyen (aşağıdaki diyagramda gösterilmiştir) dahil adlı bir İlişki içerir. Bu, daireyi oluşturmak için bir oda grafiği oluşturmanıza olanak tanır.

Önceki bölümde yer alan Oda hiyerarşisinin bölümüne bağlı olarak, bir Apartment dijital ikiz Oda tipi ikizleri içerebilir ve Koridor, Room'un bir uzantısıdır (bir Daire Koridorları içerebilir). Bu aynı zamanda bir Daire özelliği ile arterial genişletilmiş bir Koridor içerebilir anlamına gelir, çünkü genişletilmiş bir Koridor, orijinal ilişkilerde belirtildiği gibi bir Koridor olarak sayılır.

Genişletilmiş Bir Koridor arabirimi ve onunla ilişkileri olan genişletilmiş bir RealEstateCore alan hiyerarşisini gösteren diyagram.

Genişletilmiş alan hiyerarşisini kullanma

Genişletilmiş Alan hiyerarşisini kullanarak dijital ikizler oluşturduğunuzda, her dijital ikizin modeli genişletilmiş Uzay hiyerarşisinden (özgün endüstri ontolojisinden değil) bir tane olur ve arabirim devralma yoluyla endüstri ontolojisi ve genişletilmiş arabirimlerin tüm özelliklerini içerir.

Her dijital ikizin modeli, aşağıdaki diyagramda gösterilen genişletilmiş hiyerarşiden bir arabirim olacaktır.

Space, Room, ConferenceRoom, Office ve FocusRoom gibi bağlı modeller de dahil olmak üzere genişletilmiş RealEstateCore alan hiyerarşisini gösteren diyagram.

Model kimliğini ( IS_OF_MODEL işleç) kullanarak dijital ikizleri sorgularken, genişletilmiş hiyerarşideki model kimlikleri kullanılmalıdır. Örneğin, SELECT * FROM DIGITALTWINS WHERE IS_OF_MODEL('dtmi:com:example:Office;1').

Özgün ontolojiye geri katkıda bulunma

Bazı durumlarda, endüstri ontolojisini, ontoloji kullanıcılarının çoğu için büyük ölçüde yararlı olacak şekilde genişleteceksiniz. Bu durumda uzantılarınızı özgün ontolojiye geri eklemeyi göz önünde bulundurun. Her ontolojinin katkıda bulunmak için farklı bir süreci vardır, bu nedenle katkı ayrıntıları için ontolojinin GitHub deposunu denetleyin.

Yeni arabirimler için DTDL

Doğrudan endüstri ontolojisinden genişletilen yeni arabirimler için DTDL şöyle görünür.

{
  "@id": "dtmi:com:example:FocusRoom;1", 
  "@type": "interface", 
  "extends": "dtmi:digitaltwins:rec_3_3:building:Office;1", 
  "@context": "dtmi:dtdl:context;2" 
} 

Genişletilmiş arabirimler için DTDL

Yukarıda açıklanan bölümle sınırlı olan genişletilmiş arabirimler için DTDL şöyle görünür.

[
  {
    "@id": "dtmi:com:example:Space;1",
    "@type": "Interface",
    "extends": "dtmi:digitaltwins:rec_3_3:core:Space;1",
    "contents": [
      {
        "@type": "Property",
        "name": "drawingid",
        "schema": "string"
      }
    ],
    "@context": "dtmi:dtdl:context;2"
  },
  {
    "@id": "dtmi:com:example:Room;1",
    "@type": "Interface",
    "extends": [
      "dtmi:digitaltwins:rec_3_3:core:Room;1",
      "dtmi:com:example:Space;1"
    ],
    "@context": "dtmi:dtdl:context;2"
  },
  {
    "@id": "dtmi:com:example:ConferenceRoom;1",
    "@type": "Interface",
    "extends": [
      "dtmi:digitaltwins:rec_3_3:building:ConferenceRoom;1",
      "dtmi:com:example:Room;1"
    ],
    "contents": [
      {
        "@type": "Property",
        "name": "online",
        "schema": "boolean"
      }
    ],
    "@context": "dtmi:dtdl:context;2"
  },
  {
    "@id": "dtmi:com:example:Office;1",
    "@type": "Interface",
    "extends": [
      "dtmi:digitaltwins:rec_3_3:building:Office;1", 
      "dtmi:com:example:Room;1" 
    ],
    "@context": "dtmi:dtdl:context;2" 
  }, 
  {
    "@id": "dtmi:com:example:FocusRoom;1", 
    "@type": "Interface", 
    "extends": "dtmi:com:example:Office;1", 
    "@context": "dtmi:dtdl:context;2" 
  }
]

Sonraki adımlar

Ontolojileri temel alan model geliştirme yolunda devam edin: Tam model geliştirme yolu.