クラスがあるとします:
> Element
> ElementProperty
のサブクラスは次のelementProperty
とおりです。
> AtomicNumber
> AtomicMass
次のオブジェクト プロパティとそのドメインと範囲も考慮してください。
> hasElementProperty
Domain:Element
Range:ElementProperty
hasElementProperty
次のサブプロパティがあります。
> hasAtomicNumber
Domain:Element
Range:AtomicNumber
> hasAtomicMass
Domain:Element
Range:AtomicMass
このように、クラスのインスタンスである:Lithium :hasAtomicNumber :3
トリプル:Lithium :hasElementProperty :3
が推論されると言った場合。:3
AtomicNumber
では、data プロパティがあり、トリプルがあるときにトリプルが推論されるhasElementName
ようにしたい場合を考えてみましょう。これは、データ プロパティであるため、現在設定している方法では不可能であり、オブジェクト プロパティのサブプロパティにすることはできません。リテラル具体化 (リテラル具体化を参照) を使用して成功しましたが、リテラル具体化の目的はリテラルをオブジェクトとして使用できるようにするためであり、それは私がする必要があることではないため、これを行うためのより良い方法があるように感じます。どんなアイデアでも大歓迎です。:Lithium :hasElementName "Lithium"
:Lithium :hasElementProperty "Lithium"
hasElementName
hasElementProperty
ありがとう