@prefix bacnet: . @prefix rdf: . @prefix rdfs: . @prefix sh: . @prefix xsd: . @prefix owl: . a owl:Ontology . bacnet:AbortReason a rdfs:Class ; rdfs:label "AbortReason" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-255 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:AbortReasonEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:AbortReasonEnumerationValue a rdfs:Class ; rdfs:label "AbortReasonEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AccessAuthenticationFactorDisable a rdfs:Class ; rdfs:label "AccessAuthenticationFactorDisable" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:AccessAuthenticationFactorDisableEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:AccessAuthenticationFactorDisableEnumerationValue a rdfs:Class ; rdfs:label "AccessAuthenticationFactorDisableEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AccessCredentialDisable a rdfs:Class ; rdfs:label "AccessCredentialDisable" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:AccessCredentialDisableEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:AccessCredentialDisableEnumerationValue a rdfs:Class ; rdfs:label "AccessCredentialDisableEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AccessCredentialDisableReason a rdfs:Class ; rdfs:label "AccessCredentialDisableReason" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:AccessCredentialDisableReasonEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:AccessCredentialDisableReasonEnumerationValue a rdfs:Class ; rdfs:label "AccessCredentialDisableReasonEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AccessCredentialObject a rdfs:Class, sh:NodeShape ; rdfs:label "AccessCredentialObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:activation-time ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:trace-flag ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:assigned-access-rights ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 100 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:threat-authority ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:authorization-exemptions ], [ a sh:PropertyShape ; sh:class bacnet:AccessCredentialDisableEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:credential-disable ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:extended-time-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:global-identifier ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:AccessEventEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-access-event ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-access-point ], [ a sh:PropertyShape ; sh:class bacnet:BinaryPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:credential-status ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-use-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:authentication-factors ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:expiration-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reason-for-disable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.access-credential ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:days-remaining ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:belongs-to ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:absentee-limit ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:uses-remaining ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:CredentialAuthenticationFactor ; sh:path ( bacnet:authentication-factors [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:authentication-factors ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:authentication-factors ] ] ), ( [ sh:property [ sh:class bacnet:AuthorizationExemptionEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:authorization-exemptions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:authorization-exemptions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:authorization-exemptions ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:AccessCredentialDisableReasonEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:reason-for-disable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:reason-for-disable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:reason-for-disable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:AssignedAccessRights ; sh:path ( bacnet:assigned-access-rights [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:assigned-access-rights ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:assigned-access-rights ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ) . bacnet:AccessDoorObject a rdfs:Class, sh:NodeShape ; rdfs:label "AccessDoorObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:class bacnet:DoorAlarmStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:door-alarm-state ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:door-unlock-delay-time ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:door-pulse-time ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:door-extended-pulse-time ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:LockStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:lock-status ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:masked-alarm-values ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:class bacnet:DoorValueEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:alarm-values ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:door-open-too-long-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:class bacnet:DoorStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:door-status ], [ a sh:PropertyShape ; sh:class bacnet:DoorValueEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:class bacnet:DoorSecuredStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:secured-status ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.access-door ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:door-members ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-values ], [ a sh:PropertyShape ; sh:class bacnet:MaintenanceEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:maintenance-required ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ] ; sh:xone ( [ sh:property [ sh:class bacnet:DoorAlarmStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:fault-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:fault-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:fault-values ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectReference ; sh:path ( bacnet:door-members [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:door-members ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:door-members ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:DoorAlarmStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:masked-alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:masked-alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:masked-alarm-values ] ] ), ( [ sh:property [ sh:class bacnet:DoorAlarmStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:alarm-values ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ) . bacnet:AccessEvent a rdfs:Class ; rdfs:label "AccessEvent" ; bacnet:comment "Enumerated values 128-511 are used for events which indicate that access has been denied. Enumerated values 0-511 are reserved for prototype by ASHRAE. Enumerated values 512-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:AccessEventEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:AccessEventEnumerationValue a rdfs:Class ; rdfs:label "AccessEventEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AccessPassbackMode a rdfs:Class ; rdfs:label "AccessPassbackMode" ; bacnet:memberClass bacnet:AccessPassbackModeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:AccessPassbackModeEnumerationValue a rdfs:Class ; rdfs:label "AccessPassbackModeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AccessPointObject a rdfs:Class, sh:NodeShape ; rdfs:label "AccessPointObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:class bacnet:AuthorizationModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:authorization-mode ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:occupancy-lower-limit-enforced ], [ a sh:PropertyShape ; sh:class bacnet:AuthenticationFactor ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:access-event-authentication-factor ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-event-tag ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:lockout ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.access-point ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:failed-attempt-events ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:occupancy-upper-limit-enforced ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:authentication-policy-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-doors ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:class bacnet:AuthenticationStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:authentication-status ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-failed-attempts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 100 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:threat-level ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:failed-attempts-time ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:priority-for-writing ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-event-credential ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:zone-from ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:zone-to ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:lockout-relinquish-time ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:verification-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:number-of-authentication-policies ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:muster-point ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:access-transaction-events ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:access-alarm-events ], [ a sh:PropertyShape ; sh:class bacnet:AccessEventEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-event ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:authentication-policy-names ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:failed-attempts ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:occupancy-count-adjust ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:transaction-notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:active-authentication-policy ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-event-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:accompaniment-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ] ; sh:xone ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:AccessEventEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:failed-attempt-events [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:failed-attempt-events ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:failed-attempt-events ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:AccessEventEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:access-alarm-events [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:access-alarm-events ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:access-alarm-events ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:authentication-policy-names [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:authentication-policy-names ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:authentication-policy-names ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:AccessEventEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:access-transaction-events [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:access-transaction-events ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:access-transaction-events ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectReference ; sh:path ( bacnet:access-doors [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:access-doors ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:access-doors ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:AuthenticationPolicy ; sh:path ( bacnet:authentication-policy-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:authentication-policy-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:authentication-policy-list ] ] ) . bacnet:AccessRightsObject a rdfs:Class, sh:NodeShape ; rdfs:label "AccessRightsObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.access-rights ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:negative-access-rules ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:global-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:positive-access-rules ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:accompaniment ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:AccessRule ; sh:path ( bacnet:positive-access-rules [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:positive-access-rules ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:positive-access-rules ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:AccessRule ; sh:path ( bacnet:negative-access-rules [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:negative-access-rules ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:negative-access-rules ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ) . bacnet:AccessUserObject a rdfs:Class, sh:NodeShape ; rdfs:label "AccessUserObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:user-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:credentials ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:members ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:user-external-identifier ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.access-user ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:class bacnet:AccessUserTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:user-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:member-of ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:global-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:user-information-reference ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectReference ; sh:path ( bacnet:members [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:members ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:members ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectReference ; sh:path ( bacnet:credentials [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:credentials ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:credentials ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectReference ; sh:path ( bacnet:member-of [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:member-of ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:member-of ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ) . bacnet:AccessUserType a rdfs:Class ; rdfs:label "AccessUserType" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:AccessUserTypeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:AccessUserTypeEnumerationValue a rdfs:Class ; rdfs:label "AccessUserTypeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AccessZoneObject a rdfs:Class, sh:NodeShape ; rdfs:label "AccessZoneObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:class bacnet:AccessZoneOccupancyStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:occupancy-state ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:passback-timeout ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:occupancy-count-enable ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-credential-removed ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:occupancy-lower-limit ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:exit-points ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:occupancy-upper-limit ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:credentials-in-zone ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:AccessPassbackModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:passback-mode ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.access-zone ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:alarm-values ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-credential-added ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-credential-added-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:adjust-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:entry-points ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-credential-removed-time ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:occupancy-count ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:global-identifier ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectReference ; sh:path ( bacnet:credentials-in-zone [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:credentials-in-zone ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:credentials-in-zone ] ] ), ( [ sh:property [ sh:class bacnet:AccessZoneOccupancyStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:alarm-values ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectReference ; sh:path ( bacnet:entry-points [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:entry-points ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:entry-points ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectReference ; sh:path ( bacnet:exit-points [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:exit-points ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:exit-points ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ) . bacnet:AccessZoneOccupancyState a rdfs:Class ; rdfs:label "AccessZoneOccupancyState" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:AccessZoneOccupancyStateEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:AccessZoneOccupancyStateEnumerationValue a rdfs:Class ; rdfs:label "AccessZoneOccupancyStateEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AccumulatorObject a rdfs:Class, sh:NodeShape ; rdfs:label "AccumulatorObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-set ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:low-limit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:logging-object ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:limit-monitoring-interval ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.accumulator ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:class bacnet:AccumulatorRecord ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:logging-record ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:class bacnet:Prescale ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:prescale ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:high-limit ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:limit-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-low-limit ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-high-limit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:pulse-rate ], [ a sh:PropertyShape ; sh:class bacnet:Scale ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:scale ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-change-time ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:max-pres-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-before-change ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:units ] ; sh:xone ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:LimitEnableNamedBits ; sh:minCount 1 ; sh:path ( bacnet:limit-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:limit-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:limit-enable ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:Action a rdfs:Class ; rdfs:label "Action" ; bacnet:memberClass bacnet:ActionEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:ActionEnumerationValue a rdfs:Class ; rdfs:label "ActionEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AlertEnrollmentObject a rdfs:Class, sh:NodeShape ; rdfs:label "AlertEnrollmentObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.alert-enrollment ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ) . bacnet:AnalogInputObject a rdfs:Class, sh:NodeShape ; rdfs:label "AnalogInputObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-low-limit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:resolution ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:min-pres-value ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:high-limit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-pres-value ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-high-limit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-type ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.analog-input ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-increment ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:limit-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:low-limit ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:units ], [ a sh:PropertyShape ; sh:class bacnet:OptionalREAL ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:interface-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:update-interval ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:LimitEnableNamedBits ; sh:minCount 1 ; sh:path ( bacnet:limit-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:limit-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:limit-enable ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ) . bacnet:AnalogOutputObject a rdfs:Class, sh:NodeShape ; rdfs:label "AnalogOutputObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-pres-value ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:limit-enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:class bacnet:OptionalREAL ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:interface-value ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.analog-output ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:min-pres-value ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:low-limit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:resolution ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-increment ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:units ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:high-limit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:LimitEnableNamedBits ; sh:minCount 1 ; sh:path ( bacnet:limit-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:limit-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:limit-enable ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ) . bacnet:AnalogValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "AnalogValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.analog-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:low-limit ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-increment ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:limit-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-low-limit ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:resolution ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:units ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:high-limit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-pres-value ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-high-limit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:min-pres-value ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:LimitEnableNamedBits ; sh:minCount 1 ; sh:path ( bacnet:limit-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:limit-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:limit-enable ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ) . bacnet:AuditLevel a rdfs:Class ; rdfs:label "AuditLevel" ; bacnet:memberClass bacnet:AuditLevelEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:AuditLevelEnumerationValue a rdfs:Class ; rdfs:label "AuditLevelEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AuditLogObject a rdfs:Class, sh:NodeShape ; rdfs:label "AuditLogObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 18446744073709551615 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:total-record-count ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-buffer ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:member-of ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 18446744073709551615 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:record-count ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:delete-on-forward ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:buffer-size ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:issue-confirmed-notifications ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.audit-log ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ] ; sh:xone ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:AuditLogRecord ; sh:path ( bacnet:log-buffer [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:log-buffer ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:log-buffer ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ) . bacnet:AuditOperation a rdfs:Class ; rdfs:label "AuditOperation" ; bacnet:memberClass bacnet:AuditOperationEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:AuditOperationEnumerationValue a rdfs:Class ; rdfs:label "AuditOperationEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AuditOperationFlags a rdfs:Class, sh:NodeShape ; rdfs:label "AuditOperationFlags" ; bacnet:memberClass bacnet:AuditOperationFlagsNamedBits ; rdfs:subClassOf bacnet:Bitstring . bacnet:AuditOperationFlagsNamedBits a rdfs:Class ; rdfs:label "AuditOperationFlagsNamedBits" ; rdfs:subClassOf bacnet:NamedBits . bacnet:AuditReporterObject a rdfs:Class, sh:NodeShape ; rdfs:label "AuditReporterObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.audit-reporter ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:issue-confirmed-notifications ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:send-now ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:maximum-send-delay ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:audit-source-reporter ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:monitored-objects ] ; sh:xone ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:PriorityFilterNamedBits ; sh:minCount 1 ; sh:path ( bacnet:audit-priority-filter [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:audit-priority-filter ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:audit-priority-filter ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ObjectSelector ; sh:path ( bacnet:monitored-objects [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:monitored-objects ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:monitored-objects ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ) . bacnet:AuthenticationFactorType a rdfs:Class ; rdfs:label "AuthenticationFactorType" ; bacnet:memberClass bacnet:AuthenticationFactorTypeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:AuthenticationFactorTypeEnumerationValue a rdfs:Class ; rdfs:label "AuthenticationFactorTypeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AuthenticationStatus a rdfs:Class ; rdfs:label "AuthenticationStatus" ; bacnet:memberClass bacnet:AuthenticationStatusEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:AuthenticationStatusEnumerationValue a rdfs:Class ; rdfs:label "AuthenticationStatusEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AuthorizationExemption a rdfs:Class ; rdfs:label "AuthorizationExemption" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-255 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:AuthorizationExemptionEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:AuthorizationExemptionEnumerationValue a rdfs:Class ; rdfs:label "AuthorizationExemptionEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AuthorizationMode a rdfs:Class ; rdfs:label "AuthorizationMode" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:AuthorizationModeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:AuthorizationModeEnumerationValue a rdfs:Class ; rdfs:label "AuthorizationModeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AveragingObject a rdfs:Class, sh:NodeShape ; rdfs:label "AveragingObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:attempted-samples ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:average-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:window-samples ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:minimum-value ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:maximum-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:window-interval ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:valid-samples ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-property-reference ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.averaging ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:maximum-value-timestamp ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:minimum-value-timestamp ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:variance-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ) . bacnet:BackupState a rdfs:Class ; rdfs:label "BackupState" ; bacnet:memberClass bacnet:BackupStateEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:BackupStateEnumerationValue a rdfs:Class ; rdfs:label "BackupStateEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:BinaryInputObject a rdfs:Class, sh:NodeShape ; rdfs:label "BinaryInputObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-of-active-time-reset ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:inactive-text ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:change-of-state-count ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:active-text ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:OptionalBinaryPV ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:interface-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.binary-input ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:change-of-state-time ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-of-state-count-reset ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:BinaryPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:alarm-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:elapsed-active-time ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-type ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:class bacnet:BinaryPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:class bacnet:PolarityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:polarity ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ] ; sh:xone ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ) . bacnet:BinaryLightingOutputObject a rdfs:Class, sh:NodeShape ; rdfs:label "BinaryLightingOutputObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:blink-warn-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-of-active-time-reset ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:strike-count ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:class bacnet:PolarityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:polarity ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:power ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-of-strike-count-reset ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:egress-time ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:class bacnet:BinaryLightingPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:egress-active ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:elapsed-active-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:class bacnet:BinaryLightingPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:feedback-value ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.binary-lighting-output ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:BinaryLightingPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ) . bacnet:BinaryLightingPV a rdfs:Class ; rdfs:label "BinaryLightingPV" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-255 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:BinaryLightingPVEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:BinaryLightingPVEnumerationValue a rdfs:Class ; rdfs:label "BinaryLightingPVEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:BinaryOutputObject a rdfs:Class, sh:NodeShape ; rdfs:label "BinaryOutputObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:minimum-on-time ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:class bacnet:BinaryPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:class bacnet:BinaryPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:feedback-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-of-state-count-reset ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:change-of-state-count ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:elapsed-active-time ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:minimum-off-time ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:change-of-state-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:active-text ], [ a sh:PropertyShape ; sh:class bacnet:OptionalBinaryPV ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:interface-value ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-of-active-time-reset ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-type ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:class bacnet:PolarityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:polarity ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.binary-output ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:BinaryPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:inactive-text ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ) . bacnet:BinaryPV a rdfs:Class ; rdfs:label "BinaryPV" ; bacnet:memberClass bacnet:BinaryPVEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:BinaryPVEnumerationValue a rdfs:Class ; rdfs:label "BinaryPVEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:BinaryValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "BinaryValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:minimum-off-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.binary-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:change-of-state-count ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:change-of-state-time ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-of-state-count-reset ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:class bacnet:BinaryPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:minimum-on-time ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:inactive-text ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:class bacnet:BinaryPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:elapsed-active-time ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:BinaryPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:alarm-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:active-text ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-of-active-time-reset ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ] ; sh:xone ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ) . bacnet:BitstringValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "BitstringValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:bit-text ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.bitstring-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:bit-mask ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:alarm-values ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:bit-mask [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:bit-mask ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:bit-mask ] ] ), ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:relinquish-default [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:relinquish-default ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:relinquish-default ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:bit-text [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:bit-text ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:bit-text ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:present-value [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:present-value ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:present-value ] ] ), ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:alarm-values ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ) . bacnet:CalendarObject a rdfs:Class, sh:NodeShape ; rdfs:label "CalendarObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.calendar ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:date-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ] ; sh:xone ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:CalendarEntry ; sh:path ( bacnet:date-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:date-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:date-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ) . bacnet:ChannelObject a rdfs:Class, sh:NodeShape ; rdfs:label "ChannelObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:WriteStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:write-status ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-object-property-references ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:control-groups ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.channel ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:allow-group-delay-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:class bacnet:ChannelValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:channel-number ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:last-priority ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:execution-delay ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ] ; sh:xone ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:datatype xsd:nonNegativeInteger ; sh:minCount 1 ; sh:path ( bacnet:execution-delay [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:execution-delay ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:execution-delay ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:datatype xsd:nonNegativeInteger ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path ( bacnet:control-groups [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:control-groups ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:control-groups ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectPropertyReference ; sh:path ( bacnet:list-of-object-property-references [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-object-property-references ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-object-property-references ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ) . bacnet:CharacterstringValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "CharacterstringValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:alarm-values ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-values ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.characterstring-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:OptionalCharacterString ; sh:path ( bacnet:fault-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:fault-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:fault-values ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:OptionalCharacterString ; sh:path ( bacnet:alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:alarm-values ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ) . bacnet:CommandObject a rdfs:Class, sh:NodeShape ; rdfs:label "CommandObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:in-process ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:action-text ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.command ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:action ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:all-writes-successful ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ] ; sh:xone ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:action-text [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:action-text ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:action-text ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ActionList ; sh:path ( bacnet:action [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:action ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:action ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ) . bacnet:ConfirmedServiceChoice a rdfs:Class ; rdfs:label "ConfirmedServiceChoice" ; bacnet:comment "Other services to be added as they are defined. All enumeration values in this production are reserved for prototype by ASHRAE. Proprietary extensions are made by using the ConfirmedPrivateTransfer or UnconfirmedPrivateTransfer services. See Clause 23"@en ; bacnet:memberClass bacnet:ConfirmedServiceChoiceEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:ConfirmedServiceChoiceEnumerationValue a rdfs:Class ; rdfs:label "ConfirmedServiceChoiceEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:CredentialDataInputObject a rdfs:Class, sh:NodeShape ; rdfs:label "CredentialDataInputObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:supported-formats ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.credential-data-input ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:update-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:class bacnet:AuthenticationFactor ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:supported-format-classes ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ] ; sh:xone ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:datatype xsd:nonNegativeInteger ; sh:minCount 1 ; sh:path ( bacnet:supported-format-classes [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:supported-format-classes ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:supported-format-classes ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:AuthenticationFactorFormat ; sh:path ( bacnet:supported-formats [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:supported-formats ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:supported-formats ] ] ) . bacnet:DatePatternValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "DatePatternValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.datepattern-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ) . bacnet:DateValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "DateValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.date-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ) . bacnet:DatetimePatternValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "DatetimePatternValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.datetimepattern-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:is-utc ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ] ; sh:xone ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ) . bacnet:DatetimeValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "DatetimeValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.datetime-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:is-utc ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ] ; sh:xone ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:DaysOfWeek a rdfs:Class, sh:NodeShape ; rdfs:label "DaysOfWeek" ; bacnet:memberClass bacnet:DaysOfWeekNamedBits ; rdfs:subClassOf bacnet:Bitstring . bacnet:DaysOfWeekNamedBits a rdfs:Class ; rdfs:label "DaysOfWeekNamedBits" ; rdfs:subClassOf bacnet:NamedBits . bacnet:DeviceObject a rdfs:Class, sh:NodeShape ; rdfs:label "DeviceObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:max-apdu-length-accepted ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:application-software-version ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:model-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:active-vt-sessions ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:align-intervals ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:restart-notification-recipients ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:class bacnet:RestartReasonEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-restart-reason ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:backup-preparation-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:configuration-files ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:SegmentationEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:segmentation-supported ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-list ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:device-address-binding ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-of-device-restart ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:structured-object-list ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:protocol-version ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:database-revision ], [ a sh:PropertyShape ; sh:class bacnet:Recipient ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-notification-recipient ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-master ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:vendor-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:active-cov-subscriptions ], [ a sh:PropertyShape ; sh:class bacnet:DeviceStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:system-status ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-synchronization-recipients ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:number-of-apdu-retries ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:vt-classes-supported ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:restore-preparation-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-info-frames ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:local-time ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-restore-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:backup-failure-timeout ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:local-date ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:firmware-revision ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:serial-number ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:location ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:protocol-revision ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:utc-offset ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:active-cov-multiple-subscriptions ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.device ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:daylight-savings-status ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:apdu-timeout ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:class bacnet:BackupStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:backup-and-restore-state ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-segments-accepted ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:vendor-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:restore-completion-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:utc-time-synchronization-recipients ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:deployed-profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:interval-offset ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-synchronization-interval ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:protocol-object-types-supported ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:apdu-segment-timeout ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:protocol-services-supported ] ; sh:xone ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:Recipient ; sh:path ( bacnet:utc-time-synchronization-recipients [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:utc-time-synchronization-recipients ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:utc-time-synchronization-recipients ] ] ), ( [ sh:property [ sh:class bacnet:VTClassEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:vt-classes-supported [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:vt-classes-supported ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:vt-classes-supported ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:VTSession ; sh:path ( bacnet:active-vt-sessions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:active-vt-sessions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:active-vt-sessions ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:COVSubscription ; sh:path ( bacnet:active-cov-subscriptions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:active-cov-subscriptions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:active-cov-subscriptions ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:configuration-files [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:configuration-files ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:configuration-files ] ] ), ( [ sh:property [ sh:class bacnet:ObjectTypesSupportedNamedBits ; sh:minCount 1 ; sh:path ( bacnet:protocol-object-types-supported [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:protocol-object-types-supported ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:protocol-object-types-supported ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:Recipient ; sh:path ( bacnet:time-synchronization-recipients [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:time-synchronization-recipients ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:time-synchronization-recipients ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:object-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:object-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:object-list ] ] ), ( [ sh:property [ sh:class bacnet:ServicesSupportedNamedBits ; sh:minCount 1 ; sh:path ( bacnet:protocol-services-supported [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:protocol-services-supported ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:protocol-services-supported ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:structured-object-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:structured-object-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:structured-object-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:COVMultipleSubscription ; sh:path ( bacnet:active-cov-multiple-subscriptions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:active-cov-multiple-subscriptions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:active-cov-multiple-subscriptions ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:Recipient ; sh:path ( bacnet:restart-notification-recipients [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:restart-notification-recipients ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:restart-notification-recipients ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:AddressBinding ; sh:path ( bacnet:device-address-binding [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:device-address-binding ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:device-address-binding ] ] ) . bacnet:DeviceStatus a rdfs:Class ; rdfs:label "DeviceStatus" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:DeviceStatusEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:DeviceStatusEnumerationValue a rdfs:Class ; rdfs:label "DeviceStatusEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:DoorAlarmState a rdfs:Class ; rdfs:label "DoorAlarmState" ; bacnet:comment "Enumerated values 0-255 are reserved for prototype by ASHRAE. Enumerated values 256-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:DoorAlarmStateEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:DoorAlarmStateEnumerationValue a rdfs:Class ; rdfs:label "DoorAlarmStateEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:DoorSecuredStatus a rdfs:Class ; rdfs:label "DoorSecuredStatus" ; bacnet:memberClass bacnet:DoorSecuredStatusEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:DoorSecuredStatusEnumerationValue a rdfs:Class ; rdfs:label "DoorSecuredStatusEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:DoorStatus a rdfs:Class ; rdfs:label "DoorStatus" ; bacnet:memberClass bacnet:DoorStatusEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:DoorStatusEnumerationValue a rdfs:Class ; rdfs:label "DoorStatusEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:DoorValue a rdfs:Class ; rdfs:label "DoorValue" ; bacnet:memberClass bacnet:DoorValueEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:DoorValueEnumerationValue a rdfs:Class ; rdfs:label "DoorValueEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:ElevatorGroupObject a rdfs:Class, sh:NodeShape ; rdfs:label "ElevatorGroupObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.elevator-group ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:LandingCallStatus ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:landing-call-control ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:group-members ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:machine-room-id ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:class bacnet:LiftGroupModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:group-mode ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:landing-calls ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:group-id ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:group-members [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:group-members ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:group-members ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:LandingCallStatus ; sh:path ( bacnet:landing-calls [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:landing-calls ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:landing-calls ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ) . bacnet:EngineeringUnits a rdfs:Class ; rdfs:label "EngineeringUnits" ; bacnet:comment "Enumerated values 0-255 are reserved for prototype by ASHRAE. Enumerated values 256-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:EngineeringUnitsEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:EngineeringUnitsEnumerationValue a rdfs:Class ; rdfs:label "EngineeringUnitsEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:EscalatorFault a rdfs:Class ; rdfs:label "EscalatorFault" ; bacnet:memberClass bacnet:EscalatorFaultEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:EscalatorFaultEnumerationValue a rdfs:Class ; rdfs:label "EscalatorFaultEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:EscalatorMode a rdfs:Class ; rdfs:label "EscalatorMode" ; bacnet:memberClass bacnet:EscalatorModeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:EscalatorModeEnumerationValue a rdfs:Class ; rdfs:label "EscalatorModeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:EscalatorObject a rdfs:Class, sh:NodeShape ; rdfs:label "EscalatorObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:passenger-alarm ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:energy-meter ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:power-mode ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:group-id ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-signals ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:elevator-group ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:class bacnet:EscalatorModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:escalator-mode ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.escalator ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:installation-id ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:energy-meter-ref ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:class bacnet:EscalatorOperationDirectionEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:operation-direction ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ] ; sh:xone ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:EscalatorFaultEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:fault-signals [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:fault-signals ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:fault-signals ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ) . bacnet:EscalatorOperationDirection a rdfs:Class ; rdfs:label "EscalatorOperationDirection" ; bacnet:memberClass bacnet:EscalatorOperationDirectionEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:EscalatorOperationDirectionEnumerationValue a rdfs:Class ; rdfs:label "EscalatorOperationDirectionEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:EventEnrollmentObject a rdfs:Class, sh:NodeShape ; rdfs:label "EventEnrollmentObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:class bacnet:FaultTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:class bacnet:EventParameter ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-parameters ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-property-reference ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:class bacnet:EventTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-type ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.event-enrollment ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:class bacnet:FaultParameter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-parameters ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ] ; sh:xone ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ) . bacnet:EventLogObject a rdfs:Class, sh:NodeShape ; rdfs:label "EventLogObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:last-notify-record ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:buffer-size ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:start-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:record-count ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-buffer ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:notification-threshold ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:stop-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:stop-when-full ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.event-log ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:records-since-notification ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:total-record-count ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:EventLogRecord ; sh:path ( bacnet:log-buffer [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:log-buffer ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:log-buffer ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ) . bacnet:EventState a rdfs:Class ; rdfs:label "EventState" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to the procedures and constraints described in Clause 23. The last enumeration used in this version is 5."@en ; bacnet:memberClass bacnet:EventStateEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:EventStateEnumerationValue a rdfs:Class ; rdfs:label "EventStateEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:EventTransitionBits a rdfs:Class, sh:NodeShape ; rdfs:label "EventTransitionBits" ; bacnet:memberClass bacnet:EventTransitionBitsNamedBits ; rdfs:subClassOf bacnet:Bitstring . bacnet:EventTransitionBitsNamedBits a rdfs:Class ; rdfs:label "EventTransitionBitsNamedBits" ; rdfs:subClassOf bacnet:NamedBits . bacnet:EventType a rdfs:Class ; rdfs:label "EventType" ; bacnet:comment "-- Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to the procedures and constraints described in Clause 23. It is expected that these enumerated values will correspond to the use of the complex-event-type CHOICE [6] of the BACnetNotificationParameters production."@en ; bacnet:memberClass bacnet:EventTypeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:EventTypeEnumerationValue a rdfs:Class ; rdfs:label "EventTypeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:FaultType a rdfs:Class ; rdfs:label "FaultType" ; bacnet:memberClass bacnet:FaultTypeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:FaultTypeEnumerationValue a rdfs:Class ; rdfs:label "FaultTypeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:FileAccessMethod a rdfs:Class ; rdfs:label "FileAccessMethod" ; bacnet:memberClass bacnet:FileAccessMethodEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:FileAccessMethodEnumerationValue a rdfs:Class ; rdfs:label "FileAccessMethodEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:FileObject a rdfs:Class, sh:NodeShape ; rdfs:label "FileObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.file ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:archive ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:modification-date ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-size ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:record-count ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:read-only ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-type ], [ a sh:PropertyShape ; sh:class bacnet:FileAccessMethodEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-access-method ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ] ; sh:xone ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ) . bacnet:GlobalGroupObject a rdfs:Class, sh:NodeShape ; rdfs:label "GlobalGroupObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:update-interval ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:covu-period ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:ClientCOV ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:client-cov-increment ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-resubscription-interval ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.global-group ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:requested-update-interval ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:group-members ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:group-member-names ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:member-status-flags ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:covu-recipients ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:Recipient ; sh:path ( bacnet:covu-recipients [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:covu-recipients ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:covu-recipients ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:member-status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:member-status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:member-status-flags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:group-member-names [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:group-member-names ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:group-member-names ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectPropertyReference ; sh:path ( bacnet:group-members [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:group-members ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:group-members ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PropertyAccessResult ; sh:path ( bacnet:present-value [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:present-value ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:present-value ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ) . bacnet:GroupObject a rdfs:Class, sh:NodeShape ; rdfs:label "GroupObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.group ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-group-members ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ] ; sh:xone ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ReadAccessResult ; sh:path ( bacnet:present-value [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:present-value ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:present-value ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ReadAccessSpecification ; sh:path ( bacnet:list-of-group-members [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-group-members ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-group-members ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ) . bacnet:IPMode a rdfs:Class ; rdfs:label "IPMode" ; bacnet:memberClass bacnet:IPModeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:IPModeEnumerationValue a rdfs:Class ; rdfs:label "IPModeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:IntegerValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "IntegerValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:resolution ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-high-limit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.integer-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:units ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:limit-enable ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:min-pres-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:low-limit ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-pres-value ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:high-limit ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-low-limit ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-increment ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ] ; sh:xone ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:LimitEnableNamedBits ; sh:minCount 1 ; sh:path ( bacnet:limit-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:limit-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:limit-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ) . bacnet:LargeAnalogValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "LargeAnalogValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:resolution ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:low-limit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:limit-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:min-pres-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-high-limit ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:units ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-low-limit ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.large-analog-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-pres-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:high-limit ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-increment ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ] ; sh:xone ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:LimitEnableNamedBits ; sh:minCount 1 ; sh:path ( bacnet:limit-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:limit-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:limit-enable ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ) . bacnet:LifeSafetyMode a rdfs:Class ; rdfs:label "LifeSafetyMode" ; bacnet:comment "Enumerated values 0-255 are reserved for prototype by ASHRAE. Enumerated values 256-65535 may be used by others subject to procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:LifeSafetyModeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:LifeSafetyModeEnumerationValue a rdfs:Class ; rdfs:label "LifeSafetyModeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:LifeSafetyOperation a rdfs:Class ; rdfs:label "LifeSafetyOperation" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:LifeSafetyOperationEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:LifeSafetyOperationEnumerationValue a rdfs:Class ; rdfs:label "LifeSafetyOperationEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:LifeSafetyPointObject a rdfs:Class, sh:NodeShape ; rdfs:label "LifeSafetyPointObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-values ], [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:tracking-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:setting ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:direct-reading ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:member-of ], [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:mode ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:life-safety-alarm-values ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-type ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.life-safety-point ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:accepted-modes ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:units ], [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyOperationEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:operation-expected ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:alarm-values ], [ a sh:PropertyShape ; sh:class bacnet:MaintenanceEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:maintenance-required ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:class bacnet:SilencedStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:silenced ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ] ; sh:xone ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:alarm-values ] ] ), ( [ sh:property [ sh:class bacnet:LifeSafetyModeEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:accepted-modes [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:accepted-modes ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:accepted-modes ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectReference ; sh:path ( bacnet:member-of [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:member-of ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:member-of ] ] ), ( [ sh:property [ sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:life-safety-alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:life-safety-alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:life-safety-alarm-values ] ] ), ( [ sh:property [ sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:fault-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:fault-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:fault-values ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ) . bacnet:LifeSafetyState a rdfs:Class ; rdfs:label "LifeSafetyState" ; bacnet:comment "Enumerated values 0-255 are reserved for prototype by ASHRAE. Enumerated values 256-65535 may be used by others subject to procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:LifeSafetyStateEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:LifeSafetyStateEnumerationValue a rdfs:Class ; rdfs:label "LifeSafetyStateEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:LifeSafetyZoneObject a rdfs:Class, sh:NodeShape ; rdfs:label "LifeSafetyZoneObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyOperationEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:operation-expected ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.life-safety-zone ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:mode ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:maintenance-required ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:class bacnet:SilencedStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:silenced ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:member-of ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:zone-members ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:accepted-modes ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-values ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-type ], [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:tracking-value ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:alarm-values ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:life-safety-alarm-values ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectReference ; sh:path ( bacnet:member-of [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:member-of ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:member-of ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:fault-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:fault-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:fault-values ] ] ), ( [ sh:property [ sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:alarm-values ] ] ), ( [ sh:property [ sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:life-safety-alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:life-safety-alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:life-safety-alarm-values ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:LifeSafetyModeEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:accepted-modes [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:accepted-modes ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:accepted-modes ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectReference ; sh:path ( bacnet:zone-members [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:zone-members ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:zone-members ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ) . bacnet:LiftCarDirection a rdfs:Class ; rdfs:label "LiftCarDirection" ; bacnet:memberClass bacnet:LiftCarDirectionEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:LiftCarDirectionEnumerationValue a rdfs:Class ; rdfs:label "LiftCarDirectionEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:LiftCarDoorCommand a rdfs:Class ; rdfs:label "LiftCarDoorCommand" ; bacnet:memberClass bacnet:LiftCarDoorCommandEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:LiftCarDoorCommandEnumerationValue a rdfs:Class ; rdfs:label "LiftCarDoorCommandEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:LiftCarDriveStatus a rdfs:Class ; rdfs:label "LiftCarDriveStatus" ; bacnet:memberClass bacnet:LiftCarDriveStatusEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:LiftCarDriveStatusEnumerationValue a rdfs:Class ; rdfs:label "LiftCarDriveStatusEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:LiftCarMode a rdfs:Class ; rdfs:label "LiftCarMode" ; bacnet:memberClass bacnet:LiftCarModeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:LiftCarModeEnumerationValue a rdfs:Class ; rdfs:label "LiftCarModeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:LiftFault a rdfs:Class ; rdfs:label "LiftFault" ; bacnet:memberClass bacnet:LiftFaultEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:LiftFaultEnumerationValue a rdfs:Class ; rdfs:label "LiftFaultEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:LiftGroupMode a rdfs:Class ; rdfs:label "LiftGroupMode" ; bacnet:memberClass bacnet:LiftGroupModeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:LiftGroupModeEnumerationValue a rdfs:Class ; rdfs:label "LiftGroupModeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:LiftObject a rdfs:Class, sh:NodeShape ; rdfs:label "LiftObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:energy-meter ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:car-load ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:car-load-units ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:class bacnet:LiftCarDirectionEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:car-moving-direction ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:energy-meter-ref ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:group-id ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:next-stopping-floor ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:making-car-call ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:LiftCarModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:car-mode ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:fault-signals ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:class bacnet:LiftCarDirectionEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:car-assigned-direction ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.lift ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:floor-text ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:car-door-zone ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:car-door-command ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:elevator-group ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:passenger-alarm ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:higher-deck ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:lower-deck ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:registered-car-call ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:landing-door-status ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:car-door-status ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:assigned-landing-calls ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:car-position ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:car-door-text ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:installation-id ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:class bacnet:LiftCarDriveStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:car-drive-status ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ] ; sh:xone ( [ sh:property [ sh:datatype xsd:nonNegativeInteger ; sh:minCount 1 ; sh:path ( bacnet:making-car-call [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:making-car-call ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:making-car-call ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:AssignedLandingCalls ; sh:path ( bacnet:assigned-landing-calls [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:assigned-landing-calls ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:assigned-landing-calls ] ] ), ( [ sh:property [ sh:class bacnet:DoorStatusEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:car-door-status [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:car-door-status ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:car-door-status ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:LiftCarCallList ; sh:path ( bacnet:registered-car-call [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:registered-car-call ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:registered-car-call ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:LiftFaultEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:fault-signals [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:fault-signals ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:fault-signals ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:LandingDoorStatus ; sh:path ( bacnet:landing-door-status [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:landing-door-status ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:landing-door-status ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:car-door-text [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:car-door-text ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:car-door-text ] ] ), ( [ sh:property [ sh:class bacnet:LiftCarDoorCommandEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:car-door-command [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:car-door-command ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:car-door-command ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:floor-text [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:floor-text ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:floor-text ] ] ) . bacnet:LightingInProgress a rdfs:Class ; rdfs:label "LightingInProgress" ; bacnet:memberClass bacnet:LightingInProgressEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:LightingInProgressEnumerationValue a rdfs:Class ; rdfs:label "LightingInProgressEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:LightingOperation a rdfs:Class ; rdfs:label "LightingOperation" ; bacnet:comment "Enumerated values 0-255 are reserved for prototype by ASHRAE. Enumerated values 256-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:LightingOperationEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:LightingOperationEnumerationValue a rdfs:Class ; rdfs:label "LightingOperationEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:LightingOutputObject a rdfs:Class, sh:NodeShape ; rdfs:label "LightingOutputObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:lighting-command-default-priority ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:egress-active ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:instantaneous-power ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:feedback-value ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:tracking-value ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.lighting-output ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:power ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:egress-time ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:blink-warn-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:default-step-increment ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:class bacnet:LightingInProgressEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:in-progress ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:default-fade-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:default-ramp-rate ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-actual-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:class bacnet:LightingTransitionEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:transition ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-increment ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:min-actual-value ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:LightingCommand ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:lighting-command ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:priority-array ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ) . bacnet:LightingTransition a rdfs:Class ; rdfs:label "LightingTransition" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-255 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:LightingTransitionEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:LightingTransitionEnumerationValue a rdfs:Class ; rdfs:label "LightingTransitionEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:LimitEnable a rdfs:Class, sh:NodeShape ; rdfs:label "LimitEnable" ; bacnet:memberClass bacnet:LimitEnableNamedBits ; rdfs:subClassOf bacnet:Bitstring . bacnet:LimitEnableNamedBits a rdfs:Class ; rdfs:label "LimitEnableNamedBits" ; rdfs:subClassOf bacnet:NamedBits . bacnet:LoadControlObject a rdfs:Class, sh:NodeShape ; rdfs:label "LoadControlObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:start-time ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enable ], [ a sh:PropertyShape ; sh:class bacnet:ShedLevel ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:expected-shed-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:class bacnet:ShedLevel ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:requested-shed-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:duty-window ], [ a sh:PropertyShape ; sh:class bacnet:ShedStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.load-control ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:state-description ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:shed-duration ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:shed-level-descriptions ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:class bacnet:ShedLevel ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:actual-shed-level ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:shed-levels ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:full-duty-baseline ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:shed-level-descriptions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:shed-level-descriptions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:shed-level-descriptions ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:nonNegativeInteger ; sh:minCount 1 ; sh:path ( bacnet:shed-levels [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:shed-levels ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:shed-levels ] ] ) . bacnet:LockStatus a rdfs:Class ; rdfs:label "LockStatus" ; bacnet:memberClass bacnet:LockStatusEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:LockStatusEnumerationValue a rdfs:Class ; rdfs:label "LockStatusEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:LogStatus a rdfs:Class, sh:NodeShape ; rdfs:label "LogStatus" ; bacnet:memberClass bacnet:LogStatusNamedBits ; rdfs:subClassOf bacnet:Bitstring . bacnet:LogStatusNamedBits a rdfs:Class ; rdfs:label "LogStatusNamedBits" ; rdfs:subClassOf bacnet:NamedBits . bacnet:LoggingType a rdfs:Class ; rdfs:label "LoggingType" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-255 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:LoggingTypeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:LoggingTypeEnumerationValue a rdfs:Class ; rdfs:label "LoggingTypeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:LoopObject a rdfs:Class, sh:NodeShape ; rdfs:label "LoopObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:derivative-constant-units ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:manipulated-variable-reference ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:output-units ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:integral-constant-units ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:error-limit ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.loop ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:proportional-constant ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:derivative-constant ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:minimum-output ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-increment ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:controlled-variable-units ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:update-interval ], [ a sh:PropertyShape ; sh:class bacnet:ActionEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:action ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:controlled-variable-value ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:setpoint ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:proportional-constant-units ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:priority-for-writing ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:controlled-variable-reference ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:bias ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:maximum-output ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:class bacnet:OptionalREAL ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:low-diff-limit ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:integral-constant ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:class bacnet:SetpointReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:setpoint-reference ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ) . bacnet:Maintenance a rdfs:Class ; rdfs:label "Maintenance" ; bacnet:comment "Enumerated values 0-255 are reserved for prototype by ASHRAE. Enumerated values 256-65535 may be used by others subject to procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:MaintenanceEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:MaintenanceEnumerationValue a rdfs:Class ; rdfs:label "MaintenanceEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:MultistateInputObject a rdfs:Class, sh:NodeShape ; rdfs:label "MultistateInputObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.multi-state-input ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:state-text ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:alarm-values ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:number-of-states ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-values ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:interface-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ] ; sh:xone ( [ sh:property [ sh:datatype xsd:nonNegativeInteger ; sh:minCount 1 ; sh:path ( bacnet:alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:alarm-values ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:nonNegativeInteger ; sh:minCount 1 ; sh:path ( bacnet:fault-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:fault-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:fault-values ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:state-text [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:state-text ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:state-text ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ) . bacnet:MultistateOutputObject a rdfs:Class, sh:NodeShape ; rdfs:label "MultistateOutputObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:feedback-value ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:state-text ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-type ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:number-of-states ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:interface-value ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.multi-state-output ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:priority-array ] ; sh:xone ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:state-text [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:state-text ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:state-text ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ) . bacnet:MultistateValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "MultistateValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-values ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:state-text ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:alarm-values ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.multi-state-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:number-of-states ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ] ; sh:xone ( [ sh:property [ sh:datatype xsd:nonNegativeInteger ; sh:minCount 1 ; sh:path ( bacnet:fault-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:fault-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:fault-values ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:datatype xsd:nonNegativeInteger ; sh:minCount 1 ; sh:path ( bacnet:alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:alarm-values ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:state-text [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:state-text ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:state-text ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ) . bacnet:NetworkNumberQuality a rdfs:Class ; rdfs:label "NetworkNumberQuality" ; bacnet:memberClass bacnet:NetworkNumberQualityEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:NetworkNumberQualityEnumerationValue a rdfs:Class ; rdfs:label "NetworkNumberQualityEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:NetworkPortCommand a rdfs:Class ; rdfs:label "NetworkPortCommand" ; bacnet:memberClass bacnet:NetworkPortCommandEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:NetworkPortCommandEnumerationValue a rdfs:Class ; rdfs:label "NetworkPortCommandEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:NetworkPortObject a rdfs:Class, sh:NodeShape ; rdfs:label "NetworkPortObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:class bacnet:NetworkNumberQualityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:network-number-quality ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-master ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-info-frames ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reference-port ], [ a sh:PropertyShape ; sh:class bacnet:NetworkTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:network-type ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:mac-address ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auto-slave-discovery ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:bacnet-ip-multicast-address ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ipv6-zone-index ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ipv6-prefix-length ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ip-dhcp-enable ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ipv6-default-gateway ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:network-number ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ipv6-dhcp-server ], [ a sh:PropertyShape ; sh:class bacnet:IPModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:bacnet-ip-mode ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ipv6-dhcp-lease-time-remaining ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ip-dns-server ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:bacnet-ip-udp-port ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:slave-proxy-enable ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ip-default-gateway ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ip-dhcp-server ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:link-speeds ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:apdu-length ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fd-subscription-lifetime ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:changes-pending ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:link-speed-autonegotiate ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:network-interface-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:virtual-mac-address-table ], [ a sh:PropertyShape ; sh:class bacnet:ProtocolLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:protocol-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:bbmd-broadcast-distribution-table ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:bbmd-accept-fd-registrations ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:bacnet-ip-nat-traversal ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ip-dhcp-lease-time-remaining ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ipv6-dns-server ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ip-address ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ipv6-address ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:bbmd-foreign-device-table ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:bacnet-ipv6-udp-port ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:slave-address-binding ], [ a sh:PropertyShape ; sh:class bacnet:IPModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:bacnet-ipv6-mode ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:manual-slave-address-binding ], [ a sh:PropertyShape ; sh:class bacnet:HostNPort ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:bacnet-ip-global-address ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ip-dhcp-lease-time ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ip-subnet-mask ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.network-port ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:class bacnet:NetworkPortCommandEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ipv6-auto-addressing-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:HostNPort ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fd-bbmd-address ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ipv6-dhcp-lease-time ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:bacnet-ipv6-multicast-address ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:routing-table ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:link-speed ] ; sh:xone ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:VMACEntry ; sh:path ( bacnet:virtual-mac-address-table [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:virtual-mac-address-table ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:virtual-mac-address-table ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:datatype xsd:hexBinary ; sh:minCount 1 ; sh:path ( bacnet:ipv6-dns-server [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:ipv6-dns-server ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:ipv6-dns-server ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:FDTEntry ; sh:path ( bacnet:bbmd-foreign-device-table [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:bbmd-foreign-device-table ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:bbmd-foreign-device-table ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:RouterEntry ; sh:path ( bacnet:routing-table [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:routing-table ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:routing-table ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:AddressBinding ; sh:path ( bacnet:manual-slave-address-binding [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:manual-slave-address-binding ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:manual-slave-address-binding ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:AddressBinding ; sh:path ( bacnet:slave-address-binding [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:slave-address-binding ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:slave-address-binding ] ] ), ( [ sh:property [ sh:datatype xsd:hexBinary ; sh:minCount 1 ; sh:path ( bacnet:ip-dns-server [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:ip-dns-server ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:ip-dns-server ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:float ; sh:minCount 1 ; sh:path ( bacnet:link-speeds [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:link-speeds ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:link-speeds ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:BDTEntry ; sh:path ( bacnet:bbmd-broadcast-distribution-table [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:bbmd-broadcast-distribution-table ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:bbmd-broadcast-distribution-table ] ] ) . bacnet:NetworkType a rdfs:Class ; rdfs:label "NetworkType" ; bacnet:memberClass bacnet:NetworkTypeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:NetworkTypeEnumerationValue a rdfs:Class ; rdfs:label "NetworkTypeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:NodeType a rdfs:Class ; rdfs:label "NodeType" ; bacnet:memberClass bacnet:NodeTypeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:NodeTypeEnumerationValue a rdfs:Class ; rdfs:label "NodeTypeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:NotificationClassObject a rdfs:Class, sh:NodeShape ; rdfs:label "NotificationClassObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:recipient-list ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:priority ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:ack-required ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.notification-class ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:Destination ; sh:path ( bacnet:recipient-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:recipient-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:recipient-list ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:ack-required [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:ack-required ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:ack-required ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:datatype xsd:nonNegativeInteger ; sh:minCount 1 ; sh:path ( bacnet:priority [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority ] ] ) . bacnet:NotificationForwarderObject a rdfs:Class, sh:NodeShape ; rdfs:label "NotificationForwarderObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:ProcessIdSelection ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:process-identifier-filter ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:subscribed-recipients ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:port-filter ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:recipient-list ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:local-forwarding-only ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.notification-forwarder ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ] ; sh:xone ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:Destination ; sh:path ( bacnet:recipient-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:recipient-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:recipient-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:EventNotificationSubscription ; sh:path ( bacnet:subscribed-recipients [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:subscribed-recipients ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:subscribed-recipients ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PortPermission ; sh:path ( bacnet:port-filter [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:port-filter ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:port-filter ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ) . bacnet:NotifyType a rdfs:Class ; rdfs:label "NotifyType" ; bacnet:memberClass bacnet:NotifyTypeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:NotifyTypeEnumerationValue a rdfs:Class ; rdfs:label "NotifyTypeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:ObjectType a rdfs:Class ; rdfs:label "ObjectType" ; bacnet:comment "Enumerated values 0-127 are reserved for prototype by ASHRAE. Enumerated values 128-1023 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:ObjectTypeEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:ObjectTypeEnumerationValue a rdfs:Class ; rdfs:label "ObjectTypeEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:ObjectTypesSupported a rdfs:Class, sh:NodeShape ; rdfs:label "ObjectTypesSupported" ; bacnet:memberClass bacnet:ObjectTypesSupportedNamedBits ; rdfs:subClassOf bacnet:Bitstring . bacnet:ObjectTypesSupportedNamedBits a rdfs:Class ; rdfs:label "ObjectTypesSupportedNamedBits" ; rdfs:subClassOf bacnet:NamedBits . bacnet:OctetstringValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "OctetstringValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.octetstring-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ) . bacnet:Polarity a rdfs:Class ; rdfs:label "Polarity" ; bacnet:memberClass bacnet:PolarityEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:PolarityEnumerationValue a rdfs:Class ; rdfs:label "PolarityEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:PositiveIntegerValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "PositiveIntegerValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-pres-value ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-low-limit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:resolution ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.positive-integer-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:min-pres-value ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:high-limit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fault-high-limit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-increment ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:limit-enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:low-limit ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:units ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ] ; sh:xone ( [ sh:property [ sh:class bacnet:LimitEnableNamedBits ; sh:minCount 1 ; sh:path ( bacnet:limit-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:limit-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:limit-enable ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ) . bacnet:PriorityFilter a rdfs:Class, sh:NodeShape ; rdfs:label "PriorityFilter" ; bacnet:memberClass bacnet:PriorityFilterNamedBits ; rdfs:subClassOf bacnet:Bitstring . bacnet:PriorityFilterNamedBits a rdfs:Class ; rdfs:label "PriorityFilterNamedBits" ; rdfs:subClassOf bacnet:NamedBits . bacnet:ProgramError a rdfs:Class ; rdfs:label "ProgramError" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:ProgramErrorEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:ProgramErrorEnumerationValue a rdfs:Class ; rdfs:label "ProgramErrorEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:ProgramObject a rdfs:Class, sh:NodeShape ; rdfs:label "ProgramObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description-of-halt ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:program-location ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:class bacnet:ProgramErrorEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reason-for-halt ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.program ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:class bacnet:ProgramStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:program-state ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:instance-of ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:class bacnet:ProgramRequestEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:program-change ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ] ; sh:xone ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ) . bacnet:ProgramRequest a rdfs:Class ; rdfs:label "ProgramRequest" ; bacnet:memberClass bacnet:ProgramRequestEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:ProgramRequestEnumerationValue a rdfs:Class ; rdfs:label "ProgramRequestEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:ProgramState a rdfs:Class ; rdfs:label "ProgramState" ; bacnet:memberClass bacnet:ProgramStateEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:ProgramStateEnumerationValue a rdfs:Class ; rdfs:label "ProgramStateEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:PropertyIdentifier a rdfs:Class ; rdfs:label "PropertyIdentifier" ; bacnet:comment "The special property identifiers all, optional, and required are reserved for use in the ReadPropertyMultiple service or services not defined in this standard. Enumerated values 0-511 are reserved for prototype by ASHRAE. Enumerated values 512-4194303 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:PropertyIdentifierEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:PropertyIdentifierEnumerationValue a rdfs:Class ; rdfs:label "PropertyIdentifierEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:ProtocolLevel a rdfs:Class ; rdfs:label "ProtocolLevel" ; bacnet:memberClass bacnet:ProtocolLevelEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:ProtocolLevelEnumerationValue a rdfs:Class ; rdfs:label "ProtocolLevelEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:PulseConverterObject a rdfs:Class, sh:NodeShape ; rdfs:label "PulseConverterObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:limit-enable ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:update-time ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:count-change-time ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:count ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:scale-factor ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.pulse-converter ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:input-reference ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:high-limit ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:low-limit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:count-before-change ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:adjust-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-period ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-increment ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:units ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ] ; sh:xone ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:LimitEnableNamedBits ; sh:minCount 1 ; sh:path ( bacnet:limit-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:limit-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:limit-enable ] ] ) . bacnet:RejectReason a rdfs:Class ; rdfs:label "RejectReason" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-255 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:RejectReasonEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:RejectReasonEnumerationValue a rdfs:Class ; rdfs:label "RejectReasonEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:Relationship a rdfs:Class ; rdfs:label "Relationship" ; bacnet:memberClass bacnet:RelationshipEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:RelationshipEnumerationValue a rdfs:Class ; rdfs:label "RelationshipEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:Reliability a rdfs:Class ; rdfs:label "Reliability" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:ReliabilityEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:ReliabilityEnumerationValue a rdfs:Class ; rdfs:label "ReliabilityEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:RestartReason a rdfs:Class ; rdfs:label "RestartReason" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-255 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:RestartReasonEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:RestartReasonEnumerationValue a rdfs:Class ; rdfs:label "RestartReasonEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:ResultFlags a rdfs:Class, sh:NodeShape ; rdfs:label "ResultFlags" ; bacnet:memberClass bacnet:ResultFlagsNamedBits ; rdfs:subClassOf bacnet:Bitstring . bacnet:ResultFlagsNamedBits a rdfs:Class ; rdfs:label "ResultFlagsNamedBits" ; rdfs:subClassOf bacnet:NamedBits . bacnet:ScheduleObject a rdfs:Class, sh:NodeShape ; rdfs:label "ScheduleObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:weekly-schedule ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:schedule-default ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-object-property-references ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:priority-for-writing ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.schedule ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:DateRange ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:effective-period ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:exception-schedule ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ] ; sh:xone ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:SpecialEvent ; sh:path ( bacnet:exception-schedule [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:exception-schedule ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:exception-schedule ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectPropertyReference ; sh:path ( bacnet:list-of-object-property-references [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-object-property-references ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-object-property-references ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DailySchedule ; sh:path ( bacnet:weekly-schedule [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:weekly-schedule ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:weekly-schedule ] ] ) . bacnet:SecurityLevel a rdfs:Class ; rdfs:label "SecurityLevel" ; bacnet:memberClass bacnet:SecurityLevelEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:SecurityLevelEnumerationValue a rdfs:Class ; rdfs:label "SecurityLevelEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:SecurityPolicy a rdfs:Class ; rdfs:label "SecurityPolicy" ; bacnet:memberClass bacnet:SecurityPolicyEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:SecurityPolicyEnumerationValue a rdfs:Class ; rdfs:label "SecurityPolicyEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:Segmentation a rdfs:Class ; rdfs:label "Segmentation" ; bacnet:memberClass bacnet:SegmentationEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:SegmentationEnumerationValue a rdfs:Class ; rdfs:label "SegmentationEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:ServicesSupported a rdfs:Class, sh:NodeShape ; rdfs:label "ServicesSupported" ; bacnet:memberClass bacnet:ServicesSupportedNamedBits ; rdfs:subClassOf bacnet:Bitstring . bacnet:ServicesSupportedNamedBits a rdfs:Class ; rdfs:label "ServicesSupportedNamedBits" ; rdfs:subClassOf bacnet:NamedBits . bacnet:ShedState a rdfs:Class ; rdfs:label "ShedState" ; bacnet:memberClass bacnet:ShedStateEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:ShedStateEnumerationValue a rdfs:Class ; rdfs:label "ShedStateEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:SilencedState a rdfs:Class ; rdfs:label "SilencedState" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:SilencedStateEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:SilencedStateEnumerationValue a rdfs:Class ; rdfs:label "SilencedStateEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:StagingObject a rdfs:Class, sh:NodeShape ; rdfs:label "StagingObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:max-pres-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-increment ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.staging ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:units ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:default-present-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:stages ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-stage ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:stage-names ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:min-pres-value ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:target-references ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:priority-for-writing ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ] ; sh:xone ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:StageLimitValue ; sh:path ( bacnet:stages [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:stages ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:stages ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:stage-names [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:stage-names ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:stage-names ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectReference ; sh:path ( bacnet:target-references [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:target-references ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:target-references ] ] ) . bacnet:StatusFlags a rdfs:Class, sh:NodeShape ; rdfs:label "StatusFlags" ; bacnet:memberClass bacnet:StatusFlagsNamedBits ; rdfs:subClassOf bacnet:Bitstring . bacnet:StatusFlagsNamedBits a rdfs:Class ; rdfs:label "StatusFlagsNamedBits" ; rdfs:subClassOf bacnet:NamedBits . bacnet:StructuredViewObject a rdfs:Class, sh:NodeShape ; rdfs:label "StructuredViewObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:node-subtype ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:NodeTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:node-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:RelationshipEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:default-subordinate-relationship ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.structured-view ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:subordinate-list ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:represents ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:subordinate-node-types ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:subordinate-relationships ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:subordinate-annotations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:subordinate-tags ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectReference ; sh:path ( bacnet:subordinate-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:subordinate-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:subordinate-list ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:subordinate-annotations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:subordinate-annotations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:subordinate-annotations ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:NodeTypeEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:subordinate-node-types [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:subordinate-node-types ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:subordinate-node-types ] ] ), ( [ sh:property [ sh:class bacnet:RelationshipEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:subordinate-relationships [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:subordinate-relationships ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:subordinate-relationships ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValueCollection ; sh:path ( bacnet:subordinate-tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:subordinate-tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:subordinate-tags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ) . bacnet:TimePatternValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "TimePatternValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.timepattern-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ) . bacnet:TimeValueObject a rdfs:Class, sh:NodeShape ; rdfs:label "TimeValueObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:class bacnet:OptionalUnsigned ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-command-priority ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-command-time ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-array ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:class bacnet:ValueSource ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value-source-array ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.time-value ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:command-time-array ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:relinquish-default ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:OptionalPriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-priority-filter ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:command-time-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:command-time-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:command-time-array ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PriorityValue ; sh:path ( bacnet:priority-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:priority-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:priority-array ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ValueSource ; sh:path ( bacnet:value-source-array [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:value-source-array ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:value-source-array ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ) . bacnet:TimerObject a rdfs:Class, sh:NodeShape ; rdfs:label "TimerObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-pres-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:out-of-service ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:alarm-values ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:state-change-values ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:default-timeout ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.timer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:TimerTransitionEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-state-change ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:min-pres-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:expiration-time ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:initial-timeout ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay-normal ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-for-writing ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:resolution ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:class bacnet:TimerStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:timer-state ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:update-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:list-of-object-property-references ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:timer-running ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimerStateChangeValue ; sh:path ( bacnet:state-change-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:state-change-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:state-change-values ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectPropertyReference ; sh:path ( bacnet:list-of-object-property-references [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-object-property-references ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-object-property-references ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:TimerStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:alarm-values ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ) . bacnet:TimerState a rdfs:Class ; rdfs:label "TimerState" ; bacnet:memberClass bacnet:TimerStateEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:TimerStateEnumerationValue a rdfs:Class ; rdfs:label "TimerStateEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:TimerTransition a rdfs:Class ; rdfs:label "TimerTransition" ; bacnet:memberClass bacnet:TimerTransitionEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:TimerTransitionEnumerationValue a rdfs:Class ; rdfs:label "TimerTransitionEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:TrendLogMultipleObject a rdfs:Class, sh:NodeShape ; rdfs:label "TrendLogMultipleObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:stop-time ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:notification-threshold ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:records-since-notification ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:record-count ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:align-intervals ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.trend-log-multiple ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-deviceobjectproperty ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:start-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-interval ], [ a sh:PropertyShape ; sh:class bacnet:LoggingTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:logging-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:last-notify-record ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:stop-when-full ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:buffer-size ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:trigger ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-buffer ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:total-record-count ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:interval-offset ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ; sh:xone ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:DeviceObjectPropertyReference ; sh:path ( bacnet:log-deviceobjectproperty [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:log-deviceobjectproperty ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:log-deviceobjectproperty ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:LogMultipleRecord ; sh:path ( bacnet:log-buffer [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:log-buffer ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:log-buffer ] ] ) . bacnet:TrendLogObject a rdfs:Class, sh:NodeShape ; rdfs:label "TrendLogObject" ; rdfs:subClassOf bacnet:Object ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:record-count ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:start-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-list ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enable ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts-config ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:tags ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:description ], [ a sh:PropertyShape ; sh:class bacnet:LoggingTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:logging-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:interval-offset ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:stop-when-full ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-resubscription-interval ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:buffer-size ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-time-stamps ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit-ref ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:trigger ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:log-interval ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-location ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-algorithm-inhibit ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:total-record-count ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:last-notify-record ], [ a sh:PropertyShape ; sh:class bacnet:AuditLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:audit-level ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-detection-enable ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:notification-threshold ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:log-deviceobjectproperty ], [ a sh:PropertyShape ; sh:hasValue bacnet:ObjectType.trend-log ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:auditable-operations ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:records-since-notification ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:stop-time ], [ a sh:PropertyShape ; sh:class bacnet:ClientCOV ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:client-cov-increment ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:reliability-evaluation-inhibit ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:profile-name ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-buffer ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:align-intervals ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-message-texts ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:acked-transitions ] ; sh:xone ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts-config [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts-config ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts-config ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:tags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:tags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:tags ] ] ), ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:auditable-operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:auditable-operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:auditable-operations ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-time-stamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-time-stamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-time-stamps ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acked-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acked-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acked-transitions ] ] ), ( [ sh:property [ sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:property-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-list ] ] ), ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:event-message-texts [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-message-texts ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-message-texts ] ] ), ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:LogRecord ; sh:path ( bacnet:log-buffer [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:log-buffer ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:log-buffer ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ) . bacnet:UnconfirmedServiceChoice a rdfs:Class ; rdfs:label "UnconfirmedServiceChoice" ; bacnet:comment "Other services to be added as they are defined. All choice values in this production are reserved for prototype by ASHRAE. Proprietary extensions are made by using the UnconfirmedPrivateTransfer service. See Clause 23"@en ; bacnet:memberClass bacnet:UnconfirmedServiceChoiceEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:UnconfirmedServiceChoiceEnumerationValue a rdfs:Class ; rdfs:label "UnconfirmedServiceChoiceEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:VTClass a rdfs:Class ; rdfs:label "VTClass" ; bacnet:comment "Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; bacnet:memberClass bacnet:VTClassEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:VTClassEnumerationValue a rdfs:Class ; rdfs:label "VTClassEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:WriteStatus a rdfs:Class ; rdfs:label "WriteStatus" ; bacnet:memberClass bacnet:WriteStatusEnumerationValue ; rdfs:subClassOf bacnet:EnumerationKind . bacnet:WriteStatusEnumerationValue a rdfs:Class ; rdfs:label "WriteStatusEnumerationValue" ; rdfs:subClassOf bacnet:EnumerationValue . bacnet:AbortReason.apdu-too-long a bacnet:AbortReasonEnumerationValue ; bacnet:name "apdu-too-long" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:AbortReason.application-exceeded-reply-time a bacnet:AbortReasonEnumerationValue ; bacnet:name "application-exceeded-reply-time" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:AbortReason.buffer-overflow a bacnet:AbortReasonEnumerationValue ; bacnet:name "buffer-overflow" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AbortReason.insufficient-security a bacnet:AbortReasonEnumerationValue ; bacnet:name "insufficient-security" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:AbortReason.invalid-apdu-in-this-state a bacnet:AbortReasonEnumerationValue ; bacnet:name "invalid-apdu-in-this-state" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AbortReason.other a bacnet:AbortReasonEnumerationValue ; bacnet:name "other" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:AbortReason.out-of-resources a bacnet:AbortReasonEnumerationValue ; bacnet:name "out-of-resources" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:AbortReason.preempted-by-higher-priority-task a bacnet:AbortReasonEnumerationValue ; bacnet:name "preempted-by-higher-priority-task" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:AbortReason.security-error a bacnet:AbortReasonEnumerationValue ; bacnet:name "security-error" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:AbortReason.segmentation-not-supported a bacnet:AbortReasonEnumerationValue ; bacnet:name "segmentation-not-supported" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:AbortReason.tsm-timeout a bacnet:AbortReasonEnumerationValue ; bacnet:name "tsm-timeout" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:AbortReason.window-size-out-of-range a bacnet:AbortReasonEnumerationValue ; bacnet:name "window-size-out-of-range" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:AccessAuthenticationFactorDisable.disabled a bacnet:AccessAuthenticationFactorDisableEnumerationValue ; bacnet:name "disabled" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AccessAuthenticationFactorDisable.disabled-damaged a bacnet:AccessAuthenticationFactorDisableEnumerationValue ; bacnet:name "disabled-damaged" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:AccessAuthenticationFactorDisable.disabled-destroyed a bacnet:AccessAuthenticationFactorDisableEnumerationValue ; bacnet:name "disabled-destroyed" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:AccessAuthenticationFactorDisable.disabled-lost a bacnet:AccessAuthenticationFactorDisableEnumerationValue ; bacnet:name "disabled-lost" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AccessAuthenticationFactorDisable.disabled-stolen a bacnet:AccessAuthenticationFactorDisableEnumerationValue ; bacnet:name "disabled-stolen" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:AccessAuthenticationFactorDisable.none a bacnet:AccessAuthenticationFactorDisableEnumerationValue ; bacnet:name "none" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:AccessCredentialDisable.disable a bacnet:AccessCredentialDisableEnumerationValue ; bacnet:name "disable" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AccessCredentialDisable.disable-lockout a bacnet:AccessCredentialDisableEnumerationValue ; bacnet:name "disable-lockout" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:AccessCredentialDisable.disable-manual a bacnet:AccessCredentialDisableEnumerationValue ; bacnet:name "disable-manual" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AccessCredentialDisable.none a bacnet:AccessCredentialDisableEnumerationValue ; bacnet:name "none" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:AccessCredentialDisableReason.disabled a bacnet:AccessCredentialDisableReasonEnumerationValue ; bacnet:name "disabled" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:AccessCredentialDisableReason.disabled-expired a bacnet:AccessCredentialDisableReasonEnumerationValue ; bacnet:name "disabled-expired" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:AccessCredentialDisableReason.disabled-inactivity a bacnet:AccessCredentialDisableReasonEnumerationValue ; bacnet:name "disabled-inactivity" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:AccessCredentialDisableReason.disabled-lockout a bacnet:AccessCredentialDisableReasonEnumerationValue ; bacnet:name "disabled-lockout" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:AccessCredentialDisableReason.disabled-manual a bacnet:AccessCredentialDisableReasonEnumerationValue ; bacnet:name "disabled-manual" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:AccessCredentialDisableReason.disabled-max-days a bacnet:AccessCredentialDisableReasonEnumerationValue ; bacnet:name "disabled-max-days" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:AccessCredentialDisableReason.disabled-max-uses a bacnet:AccessCredentialDisableReasonEnumerationValue ; bacnet:name "disabled-max-uses" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:AccessCredentialDisableReason.disabled-needs-provisioning a bacnet:AccessCredentialDisableReasonEnumerationValue ; bacnet:name "disabled-needs-provisioning" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AccessCredentialDisableReason.disabled-not-yet-active a bacnet:AccessCredentialDisableReasonEnumerationValue ; bacnet:name "disabled-not-yet-active" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:AccessCredentialDisableReason.disabled-unassigned a bacnet:AccessCredentialDisableReasonEnumerationValue ; bacnet:name "disabled-unassigned" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AccessEvent.accompaniment-by a bacnet:AccessEventEnumerationValue ; bacnet:name "accompaniment-by" ; bacnet:value "12"^^xsd:nonNegativeInteger . bacnet:AccessEvent.authentication-factor-read a bacnet:AccessEventEnumerationValue ; bacnet:name "authentication-factor-read" ; bacnet:value "13"^^xsd:nonNegativeInteger . bacnet:AccessEvent.authorization-delayed a bacnet:AccessEventEnumerationValue ; bacnet:name "authorization-delayed" ; bacnet:value "14"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-authentication-factor-damaged a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-authentication-factor-damaged" ; bacnet:value "145"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-authentication-factor-destroyed a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-authentication-factor-destroyed" ; bacnet:value "146"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-authentication-factor-disabled a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-authentication-factor-disabled" ; bacnet:value "147"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-authentication-factor-error a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-authentication-factor-error" ; bacnet:value "148"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-authentication-factor-lost a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-authentication-factor-lost" ; bacnet:value "143"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-authentication-factor-stolen a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-authentication-factor-stolen" ; bacnet:value "144"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-authentication-factor-timeout a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-authentication-factor-timeout" ; bacnet:value "131"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-authentication-unavailable a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-authentication-unavailable" ; bacnet:value "130"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-credential-disabled a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-credential-disabled" ; bacnet:value "158"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-credential-expired a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-credential-expired" ; bacnet:value "152"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-credential-inactivity a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-credential-inactivity" ; bacnet:value "157"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-credential-lockout a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-credential-lockout" ; bacnet:value "154"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-credential-manual-disable a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-credential-manual-disable" ; bacnet:value "153"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-credential-max-days a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-credential-max-days" ; bacnet:value "155"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-credential-max-uses a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-credential-max-uses" ; bacnet:value "156"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-credential-not-provisioned a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-credential-not-provisioned" ; bacnet:value "150"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-credential-not-yet-active a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-credential-not-yet-active" ; bacnet:value "151"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-credential-unassigned a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-credential-unassigned" ; bacnet:value "149"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-deny-all a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-deny-all" ; bacnet:value "128"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-incorrect-accompaniment a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-incorrect-accompaniment" ; bacnet:value "160"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-incorrect-authentication-factor a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-incorrect-authentication-factor" ; bacnet:value "132"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-lockout a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-lockout" ; bacnet:value "161"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-lower-occupancy-limit a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-lower-occupancy-limit" ; bacnet:value "141"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-max-attempts a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-max-attempts" ; bacnet:value "140"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-no-access-rights a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-no-access-rights" ; bacnet:value "135"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-no-accompaniment a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-no-accompaniment" ; bacnet:value "159"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-other a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-other" ; bacnet:value "164"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-out-of-time-range a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-out-of-time-range" ; bacnet:value "136"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-passback a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-passback" ; bacnet:value "138"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-point-no-access-rights a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-point-no-access-rights" ; bacnet:value "134"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-threat-level a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-threat-level" ; bacnet:value "137"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-unexpected-location-usage a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-unexpected-location-usage" ; bacnet:value "139"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-unknown-credential a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-unknown-credential" ; bacnet:value "129"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-upper-occupancy-limit a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-upper-occupancy-limit" ; bacnet:value "142"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-verification-failed a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-verification-failed" ; bacnet:value "162"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-verification-timeout a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-verification-timeout" ; bacnet:value "163"^^xsd:nonNegativeInteger . bacnet:AccessEvent.denied-zone-no-access-rights a bacnet:AccessEventEnumerationValue ; bacnet:name "denied-zone-no-access-rights" ; bacnet:value "133"^^xsd:nonNegativeInteger . bacnet:AccessEvent.duress a bacnet:AccessEventEnumerationValue ; bacnet:name "duress" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:AccessEvent.granted a bacnet:AccessEventEnumerationValue ; bacnet:name "granted" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AccessEvent.locked-by-higher-priority a bacnet:AccessEventEnumerationValue ; bacnet:name "locked-by-higher-priority" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:AccessEvent.lockout-max-attempts a bacnet:AccessEventEnumerationValue ; bacnet:name "lockout-max-attempts" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:AccessEvent.lockout-other a bacnet:AccessEventEnumerationValue ; bacnet:name "lockout-other" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:AccessEvent.lockout-relinquished a bacnet:AccessEventEnumerationValue ; bacnet:name "lockout-relinquished" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:AccessEvent.muster a bacnet:AccessEventEnumerationValue ; bacnet:name "muster" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AccessEvent.no-entry-after-grant a bacnet:AccessEventEnumerationValue ; bacnet:name "no-entry-after-grant" ; bacnet:value "16"^^xsd:nonNegativeInteger . bacnet:AccessEvent.none a bacnet:AccessEventEnumerationValue ; bacnet:name "none" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:AccessEvent.out-of-service a bacnet:AccessEventEnumerationValue ; bacnet:name "out-of-service" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:AccessEvent.out-of-service-relinquished a bacnet:AccessEventEnumerationValue ; bacnet:name "out-of-service-relinquished" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:AccessEvent.passback-detected a bacnet:AccessEventEnumerationValue ; bacnet:name "passback-detected" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:AccessEvent.trace a bacnet:AccessEventEnumerationValue ; bacnet:name "trace" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:AccessEvent.verification-required a bacnet:AccessEventEnumerationValue ; bacnet:name "verification-required" ; bacnet:value "15"^^xsd:nonNegativeInteger . bacnet:AccessPassbackMode.hard-passback a bacnet:AccessPassbackModeEnumerationValue ; bacnet:name "hard-passback" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AccessPassbackMode.passback-off a bacnet:AccessPassbackModeEnumerationValue ; bacnet:name "passback-off" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:AccessPassbackMode.soft-passback a bacnet:AccessPassbackModeEnumerationValue ; bacnet:name "soft-passback" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AccessUserType.asset a bacnet:AccessUserTypeEnumerationValue ; bacnet:name "asset" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:AccessUserType.group a bacnet:AccessUserTypeEnumerationValue ; bacnet:name "group" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AccessUserType.person a bacnet:AccessUserTypeEnumerationValue ; bacnet:name "person" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AccessZoneOccupancyState.above-upper-limit a bacnet:AccessZoneOccupancyStateEnumerationValue ; bacnet:name "above-upper-limit" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:AccessZoneOccupancyState.at-lower-limit a bacnet:AccessZoneOccupancyStateEnumerationValue ; bacnet:name "at-lower-limit" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AccessZoneOccupancyState.at-upper-limit a bacnet:AccessZoneOccupancyStateEnumerationValue ; bacnet:name "at-upper-limit" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:AccessZoneOccupancyState.below-lower-limit a bacnet:AccessZoneOccupancyStateEnumerationValue ; bacnet:name "below-lower-limit" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AccessZoneOccupancyState.disabled a bacnet:AccessZoneOccupancyStateEnumerationValue ; bacnet:name "disabled" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:AccessZoneOccupancyState.normal a bacnet:AccessZoneOccupancyStateEnumerationValue ; bacnet:name "normal" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:AccessZoneOccupancyState.not-supported a bacnet:AccessZoneOccupancyStateEnumerationValue ; bacnet:name "not-supported" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:Action.direct a bacnet:ActionEnumerationValue ; bacnet:name "direct" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:Action.reverse a bacnet:ActionEnumerationValue ; bacnet:name "reverse" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AssignedLandingCalls.LandingCalls a bacnet:SequenceOf ; bacnet:memberType bacnet:AssignedLandingCalls.LandingCallsSequence . bacnet:AuditLevel.audit-all a bacnet:AuditLevelEnumerationValue ; bacnet:name "audit-all" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AuditLevel.audit-config a bacnet:AuditLevelEnumerationValue ; bacnet:name "audit-config" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AuditLevel.default a bacnet:AuditLevelEnumerationValue ; bacnet:name "default" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:AuditLevel.none a bacnet:AuditLevelEnumerationValue ; bacnet:name "none" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:AuditLogQueryParameters a sh:NodeShape ; rdfs:label "AuditLogQueryParameters" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AuditLogQueryParameters.ByTarget ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:by-target ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AuditLogQueryParameters.BySource ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:by-source ] ] ) . bacnet:AuditLogRecordResult a sh:NodeShape ; rdfs:label "AuditLogRecordResult" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:AuditLogRecord ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:assigned-access-rights ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 18446744073709551615 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:sequence-number ] . bacnet:AuditOperation.acknowledge-alarm a bacnet:AuditOperationEnumerationValue ; bacnet:name "acknowledge-alarm" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:AuditOperation.auditing-failure a bacnet:AuditOperationEnumerationValue ; bacnet:name "auditing-failure" ; bacnet:value "13"^^xsd:nonNegativeInteger . bacnet:AuditOperation.create a bacnet:AuditOperationEnumerationValue ; bacnet:name "create" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AuditOperation.delete a bacnet:AuditOperationEnumerationValue ; bacnet:name "delete" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:AuditOperation.device-backup a bacnet:AuditOperationEnumerationValue ; bacnet:name "device-backup" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:AuditOperation.device-disable-comm a bacnet:AuditOperationEnumerationValue ; bacnet:name "device-disable-comm" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:AuditOperation.device-enable-comm a bacnet:AuditOperationEnumerationValue ; bacnet:name "device-enable-comm" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:AuditOperation.device-reset a bacnet:AuditOperationEnumerationValue ; bacnet:name "device-reset" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:AuditOperation.device-restore a bacnet:AuditOperationEnumerationValue ; bacnet:name "device-restore" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:AuditOperation.general a bacnet:AuditOperationEnumerationValue ; bacnet:name "general" ; bacnet:value "15"^^xsd:nonNegativeInteger . bacnet:AuditOperation.life-safety a bacnet:AuditOperationEnumerationValue ; bacnet:name "life-safety" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:AuditOperation.network-changes a bacnet:AuditOperationEnumerationValue ; bacnet:name "network-changes" ; bacnet:value "14"^^xsd:nonNegativeInteger . bacnet:AuditOperation.notification a bacnet:AuditOperationEnumerationValue ; bacnet:name "notification" ; bacnet:value "12"^^xsd:nonNegativeInteger . bacnet:AuditOperation.read a bacnet:AuditOperationEnumerationValue ; bacnet:name "read" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:AuditOperation.subscription a bacnet:AuditOperationEnumerationValue ; bacnet:name "subscription" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:AuditOperation.write a bacnet:AuditOperationEnumerationValue ; bacnet:name "write" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AuditOperationFlags.acknowledge-alarm a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "5"^^xsd:nonNegativeInteger ; bacnet:name "acknowledge-alarm" . bacnet:AuditOperationFlags.auditing-failure a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "13"^^xsd:nonNegativeInteger ; bacnet:name "auditing-failure" . bacnet:AuditOperationFlags.create a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "2"^^xsd:nonNegativeInteger ; bacnet:name "create" . bacnet:AuditOperationFlags.delete a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "3"^^xsd:nonNegativeInteger ; bacnet:name "delete" . bacnet:AuditOperationFlags.device-backup a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "9"^^xsd:nonNegativeInteger ; bacnet:name "device-backup" . bacnet:AuditOperationFlags.device-disable-comm a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "6"^^xsd:nonNegativeInteger ; bacnet:name "device-disable-comm" . bacnet:AuditOperationFlags.device-enable-comm a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "7"^^xsd:nonNegativeInteger ; bacnet:name "device-enable-comm" . bacnet:AuditOperationFlags.device-reset a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "8"^^xsd:nonNegativeInteger ; bacnet:name "device-reset" . bacnet:AuditOperationFlags.device-restore a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "10"^^xsd:nonNegativeInteger ; bacnet:name "device-restore" . bacnet:AuditOperationFlags.general a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "15"^^xsd:nonNegativeInteger ; bacnet:name "general" . bacnet:AuditOperationFlags.life-safety a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "4"^^xsd:nonNegativeInteger ; bacnet:name "life-safety" . bacnet:AuditOperationFlags.network-changes a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "14"^^xsd:nonNegativeInteger ; bacnet:name "network-changes" . bacnet:AuditOperationFlags.notification a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "12"^^xsd:nonNegativeInteger ; bacnet:name "notification" . bacnet:AuditOperationFlags.read a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "0"^^xsd:nonNegativeInteger ; bacnet:name "read" . bacnet:AuditOperationFlags.subscription a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "11"^^xsd:nonNegativeInteger ; bacnet:name "subscription" . bacnet:AuditOperationFlags.write a bacnet:AuditOperationFlagsNamedBits ; bacnet:bit "1"^^xsd:nonNegativeInteger ; bacnet:name "write" . bacnet:AuthenticationFactorType.aba-track2 a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "aba-track2" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.cbeff-a a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "cbeff-a" ; bacnet:value "21"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.cbeff-b a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "cbeff-b" ; bacnet:value "22"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.cbeff-c a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "cbeff-c" ; bacnet:value "23"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.chuid a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "chuid" ; bacnet:value "18"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.chuid-full a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "chuid-full" ; bacnet:value "19"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.custom a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "custom" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.error a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "error" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.facility16-card32 a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "facility16-card32" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.facility32-card32 a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "facility32-card32" ; bacnet:value "12"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.fasc-n a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "fasc-n" ; bacnet:value "13"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.fasc-n-bcd a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "fasc-n-bcd" ; bacnet:value "14"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.fasc-n-large a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "fasc-n-large" ; bacnet:value "15"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.fasc-n-large-bcd a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "fasc-n-large-bcd" ; bacnet:value "16"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.gsa75 a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "gsa75" ; bacnet:value "17"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.guid a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "guid" ; bacnet:value "20"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.simple-alpha-numeric a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "simple-alpha-numeric" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.simple-number16 a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "simple-number16" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.simple-number32 a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "simple-number32" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.simple-number56 a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "simple-number56" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.undefined a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "undefined" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.user-password a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "user-password" ; bacnet:value "24"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.wiegand26 a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "wiegand26" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.wiegand37 a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "wiegand37" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:AuthenticationFactorType.wiegand37-facility a bacnet:AuthenticationFactorTypeEnumerationValue ; bacnet:name "wiegand37-facility" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:AuthenticationPolicy.Policy a bacnet:SequenceOf ; bacnet:memberType bacnet:AuthenticationPolicy.PolicySequence . bacnet:AuthenticationStatus.disabled a bacnet:AuthenticationStatusEnumerationValue ; bacnet:name "disabled" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AuthenticationStatus.in-progress a bacnet:AuthenticationStatusEnumerationValue ; bacnet:name "in-progress" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:AuthenticationStatus.not-ready a bacnet:AuthenticationStatusEnumerationValue ; bacnet:name "not-ready" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:AuthenticationStatus.ready a bacnet:AuthenticationStatusEnumerationValue ; bacnet:name "ready" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AuthenticationStatus.waiting-for-accompaniment a bacnet:AuthenticationStatusEnumerationValue ; bacnet:name "waiting-for-accompaniment" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:AuthenticationStatus.waiting-for-authentication-factor a bacnet:AuthenticationStatusEnumerationValue ; bacnet:name "waiting-for-authentication-factor" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:AuthenticationStatus.waiting-for-verification a bacnet:AuthenticationStatusEnumerationValue ; bacnet:name "waiting-for-verification" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:AuthorizationExemption.access-rights a bacnet:AuthorizationExemptionEnumerationValue ; bacnet:name "access-rights" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AuthorizationExemption.authorization-delay a bacnet:AuthorizationExemptionEnumerationValue ; bacnet:name "authorization-delay" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:AuthorizationExemption.deny a bacnet:AuthorizationExemptionEnumerationValue ; bacnet:name "deny" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:AuthorizationExemption.lockout a bacnet:AuthorizationExemptionEnumerationValue ; bacnet:name "lockout" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:AuthorizationExemption.occupancy-check a bacnet:AuthorizationExemptionEnumerationValue ; bacnet:name "occupancy-check" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AuthorizationExemption.passback a bacnet:AuthorizationExemptionEnumerationValue ; bacnet:name "passback" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:AuthorizationExemption.verification a bacnet:AuthorizationExemptionEnumerationValue ; bacnet:name "verification" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:AuthorizationMode.authorization-delayed a bacnet:AuthorizationModeEnumerationValue ; bacnet:name "authorization-delayed" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:AuthorizationMode.authorize a bacnet:AuthorizationModeEnumerationValue ; bacnet:name "authorize" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:AuthorizationMode.deny-all a bacnet:AuthorizationModeEnumerationValue ; bacnet:name "deny-all" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AuthorizationMode.grant-active a bacnet:AuthorizationModeEnumerationValue ; bacnet:name "grant-active" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:AuthorizationMode.none a bacnet:AuthorizationModeEnumerationValue ; bacnet:name "none" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:AuthorizationMode.verification-required a bacnet:AuthorizationModeEnumerationValue ; bacnet:name "verification-required" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:BackupState.backup-failure a bacnet:BackupStateEnumerationValue ; bacnet:name "backup-failure" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:BackupState.idle a bacnet:BackupStateEnumerationValue ; bacnet:name "idle" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:BackupState.performing-a-backup a bacnet:BackupStateEnumerationValue ; bacnet:name "performing-a-backup" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:BackupState.performing-a-restore a bacnet:BackupStateEnumerationValue ; bacnet:name "performing-a-restore" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:BackupState.preparing-for-backup a bacnet:BackupStateEnumerationValue ; bacnet:name "preparing-for-backup" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:BackupState.preparing-for-restore a bacnet:BackupStateEnumerationValue ; bacnet:name "preparing-for-restore" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:BackupState.restore-failure a bacnet:BackupStateEnumerationValue ; bacnet:name "restore-failure" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:BinaryLightingPV.off a bacnet:BinaryLightingPVEnumerationValue ; bacnet:name "off" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:BinaryLightingPV.on a bacnet:BinaryLightingPVEnumerationValue ; bacnet:name "on" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:BinaryLightingPV.stop a bacnet:BinaryLightingPVEnumerationValue ; bacnet:name "stop" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:BinaryLightingPV.warn a bacnet:BinaryLightingPVEnumerationValue ; bacnet:name "warn" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:BinaryLightingPV.warn-off a bacnet:BinaryLightingPVEnumerationValue ; bacnet:name "warn-off" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:BinaryLightingPV.warn-relinquish a bacnet:BinaryLightingPVEnumerationValue ; bacnet:name "warn-relinquish" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:BinaryPV.active a bacnet:BinaryPVEnumerationValue ; bacnet:name "active" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:BinaryPV.inactive a bacnet:BinaryPVEnumerationValue ; bacnet:name "inactive" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:COVMultipleSubscription.ListOfCovSubscriptionSpecifications a bacnet:SequenceOf ; bacnet:memberType bacnet:COVMultipleSubscription.ListOfCovSubscriptionSpecificationsSequence . bacnet:COVMultipleSubscription.ListOfCovSubscriptionSpecificationsSequence.ListOfCovReferences a bacnet:SequenceOf ; bacnet:memberType bacnet:COVMultipleSubscription.ListOfCovSubscriptionSpecificationsSequence.ListOfCovReferencesSequence . bacnet:ConfirmedCOVNotificationMultipleRequest.ListOfCovNotifications a bacnet:SequenceOf ; bacnet:memberType bacnet:ConfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence . bacnet:ConfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence.ListOfValues a bacnet:SequenceOf ; bacnet:memberType bacnet:ConfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence.ListOfValuesSequence . bacnet:ConfirmedServiceChoice.acknowledge-alarm a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "acknowledge-alarm" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.add-list-element a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "add-list-element" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.atomic-read-file a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "atomic-read-file" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.atomic-write-file a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "atomic-write-file" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.confirmed-cov-notification a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "confirmed-cov-notification" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.confirmed-cov-notification-multiple a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "confirmed-cov-notification-multiple" ; bacnet:value "31"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.confirmed-event-notification a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "confirmed-event-notification" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.confirmed-private-transfer a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "confirmed-private-transfer" ; bacnet:value "18"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.confirmed-text-message a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "confirmed-text-message" ; bacnet:value "19"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.create-object a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "create-object" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.delete-object a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "delete-object" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.device-communication-control a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "device-communication-control" ; bacnet:value "17"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.get-alarm-summary a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "get-alarm-summary" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.get-enrollment-summary a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "get-enrollment-summary" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.get-event-information a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "get-event-information" ; bacnet:value "29"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.life-safety-operation a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "life-safety-operation" ; bacnet:value "27"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.read-property a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "read-property" ; bacnet:value "12"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.read-property-multiple a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "read-property-multiple" ; bacnet:value "14"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.read-range a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "read-range" ; bacnet:value "26"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.reinitialize-device a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "reinitialize-device" ; bacnet:value "20"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.remove-list-element a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "remove-list-element" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.subscribe-cov a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "subscribe-cov" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.subscribe-cov-property a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "subscribe-cov-property" ; bacnet:value "28"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.subscribe-cov-property-multiple a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "subscribe-cov-property-multiple" ; bacnet:value "30"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.vt-close a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "vt-close" ; bacnet:value "22"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.vt-data a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "vt-data" ; bacnet:value "23"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.vt-open a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "vt-open" ; bacnet:value "21"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.write-property a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "write-property" ; bacnet:value "15"^^xsd:nonNegativeInteger . bacnet:ConfirmedServiceChoice.write-property-multiple a bacnet:ConfirmedServiceChoiceEnumerationValue ; bacnet:name "write-property-multiple" ; bacnet:value "16"^^xsd:nonNegativeInteger . bacnet:CreateObjectACK a bacnet:ObjectIdentifier . bacnet:DaysOfWeek.friday a bacnet:DaysOfWeekNamedBits ; bacnet:bit "4"^^xsd:nonNegativeInteger ; bacnet:name "friday" . bacnet:DaysOfWeek.monday a bacnet:DaysOfWeekNamedBits ; bacnet:bit "0"^^xsd:nonNegativeInteger ; bacnet:name "monday" . bacnet:DaysOfWeek.saturday a bacnet:DaysOfWeekNamedBits ; bacnet:bit "5"^^xsd:nonNegativeInteger ; bacnet:name "saturday" . bacnet:DaysOfWeek.sunday a bacnet:DaysOfWeekNamedBits ; bacnet:bit "6"^^xsd:nonNegativeInteger ; bacnet:name "sunday" . bacnet:DaysOfWeek.thursday a bacnet:DaysOfWeekNamedBits ; bacnet:bit "3"^^xsd:nonNegativeInteger ; bacnet:name "thursday" . bacnet:DaysOfWeek.tuesday a bacnet:DaysOfWeekNamedBits ; bacnet:bit "1"^^xsd:nonNegativeInteger ; bacnet:name "tuesday" . bacnet:DaysOfWeek.wednesday a bacnet:DaysOfWeekNamedBits ; bacnet:bit "2"^^xsd:nonNegativeInteger ; bacnet:name "wednesday" . bacnet:DeviceStatus.backup-in-progress a bacnet:DeviceStatusEnumerationValue ; bacnet:name "backup-in-progress" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:DeviceStatus.download-in-progress a bacnet:DeviceStatusEnumerationValue ; bacnet:name "download-in-progress" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:DeviceStatus.download-required a bacnet:DeviceStatusEnumerationValue ; bacnet:name "download-required" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:DeviceStatus.non-operational a bacnet:DeviceStatusEnumerationValue ; bacnet:name "non-operational" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:DeviceStatus.operational a bacnet:DeviceStatusEnumerationValue ; bacnet:name "operational" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:DeviceStatus.operational-read-only a bacnet:DeviceStatusEnumerationValue ; bacnet:name "operational-read-only" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:DoorAlarmState.alarm a bacnet:DoorAlarmStateEnumerationValue ; bacnet:name "alarm" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:DoorAlarmState.door-fault a bacnet:DoorAlarmStateEnumerationValue ; bacnet:name "door-fault" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:DoorAlarmState.door-open-too-long a bacnet:DoorAlarmStateEnumerationValue ; bacnet:name "door-open-too-long" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:DoorAlarmState.egress-open a bacnet:DoorAlarmStateEnumerationValue ; bacnet:name "egress-open" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:DoorAlarmState.forced-open a bacnet:DoorAlarmStateEnumerationValue ; bacnet:name "forced-open" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:DoorAlarmState.free-access a bacnet:DoorAlarmStateEnumerationValue ; bacnet:name "free-access" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:DoorAlarmState.lock-down a bacnet:DoorAlarmStateEnumerationValue ; bacnet:name "lock-down" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:DoorAlarmState.normal a bacnet:DoorAlarmStateEnumerationValue ; bacnet:name "normal" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:DoorAlarmState.tamper a bacnet:DoorAlarmStateEnumerationValue ; bacnet:name "tamper" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:DoorSecuredStatus.secured a bacnet:DoorSecuredStatusEnumerationValue ; bacnet:name "secured" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:DoorSecuredStatus.unknown a bacnet:DoorSecuredStatusEnumerationValue ; bacnet:name "unknown" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:DoorSecuredStatus.unsecured a bacnet:DoorSecuredStatusEnumerationValue ; bacnet:name "unsecured" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:DoorStatus.closed a bacnet:DoorStatusEnumerationValue ; bacnet:name "closed" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:DoorStatus.closing a bacnet:DoorStatusEnumerationValue ; bacnet:name "closing" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:DoorStatus.door-fault a bacnet:DoorStatusEnumerationValue ; bacnet:name "door-fault" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:DoorStatus.limited-opened a bacnet:DoorStatusEnumerationValue ; bacnet:name "limited-opened" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:DoorStatus.none a bacnet:DoorStatusEnumerationValue ; bacnet:name "none" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:DoorStatus.opened a bacnet:DoorStatusEnumerationValue ; bacnet:name "opened" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:DoorStatus.opening a bacnet:DoorStatusEnumerationValue ; bacnet:name "opening" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:DoorStatus.safety-locked a bacnet:DoorStatusEnumerationValue ; bacnet:name "safety-locked" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:DoorStatus.unknown a bacnet:DoorStatusEnumerationValue ; bacnet:name "unknown" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:DoorStatus.unused a bacnet:DoorStatusEnumerationValue ; bacnet:name "unused" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:DoorValue.extended-pulse-unlock a bacnet:DoorValueEnumerationValue ; bacnet:name "extended-pulse-unlock" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:DoorValue.lock a bacnet:DoorValueEnumerationValue ; bacnet:name "lock" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:DoorValue.pulse-unlock a bacnet:DoorValueEnumerationValue ; bacnet:name "pulse-unlock" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:DoorValue.unlock a bacnet:DoorValueEnumerationValue ; bacnet:name "unlock" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.ampere-seconds a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "ampere-seconds" ; bacnet:value "16"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.ampere-square-hours a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "ampere-square-hours" ; bacnet:value "246"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.ampere-square-meters a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "ampere-square-meters" ; bacnet:value "169"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.amperes a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "amperes" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.amperes-per-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "amperes-per-meter" ; bacnet:value "167"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.amperes-per-square-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "amperes-per-square-meter" ; bacnet:value "168"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.bars a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "bars" ; bacnet:value "55"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.becquerels a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "becquerels" ; bacnet:value "222"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.btus a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "btus" ; bacnet:value "20"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.btus-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "btus-per-hour" ; bacnet:value "50"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.btus-per-pound a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "btus-per-pound" ; bacnet:value "117"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.btus-per-pound-dry-air a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "btus-per-pound-dry-air" ; bacnet:value "24"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.candelas a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "candelas" ; bacnet:value "179"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.candelas-per-square-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "candelas-per-square-meter" ; bacnet:value "180"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.centimeters a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "centimeters" ; bacnet:value "118"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.centimeters-of-mercury a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "centimeters-of-mercury" ; bacnet:value "60"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.centimeters-of-water a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "centimeters-of-water" ; bacnet:value "57"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.cubic-feet a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "cubic-feet" ; bacnet:value "79"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.cubic-feet-per-day a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "cubic-feet-per-day" ; bacnet:value "248"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.cubic-feet-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "cubic-feet-per-hour" ; bacnet:value "191"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.cubic-feet-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "cubic-feet-per-minute" ; bacnet:value "84"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.cubic-feet-per-second a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "cubic-feet-per-second" ; bacnet:value "142"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.cubic-meters a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "cubic-meters" ; bacnet:value "80"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.cubic-meters-per-day a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "cubic-meters-per-day" ; bacnet:value "249"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.cubic-meters-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "cubic-meters-per-hour" ; bacnet:value "135"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.cubic-meters-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "cubic-meters-per-minute" ; bacnet:value "165"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.cubic-meters-per-second a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "cubic-meters-per-second" ; bacnet:value "85"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.currency1 a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "currency1" ; bacnet:value "105"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.currency10 a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "currency10" ; bacnet:value "114"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.currency2 a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "currency2" ; bacnet:value "106"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.currency3 a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "currency3" ; bacnet:value "107"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.currency4 a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "currency4" ; bacnet:value "108"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.currency5 a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "currency5" ; bacnet:value "109"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.currency6 a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "currency6" ; bacnet:value "110"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.currency7 a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "currency7" ; bacnet:value "111"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.currency8 a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "currency8" ; bacnet:value "112"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.currency9 a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "currency9" ; bacnet:value "113"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.cycles-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "cycles-per-hour" ; bacnet:value "25"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.cycles-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "cycles-per-minute" ; bacnet:value "26"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.days a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "days" ; bacnet:value "70"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.decibels a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "decibels" ; bacnet:value "199"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.decibels-a a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "decibels-a" ; bacnet:value "232"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.decibels-millivolt a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "decibels-millivolt" ; bacnet:value "200"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.decibels-volt a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "decibels-volt" ; bacnet:value "201"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.degree-days-celsius a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "degree-days-celsius" ; bacnet:value "65"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.degree-days-fahrenheit a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "degree-days-fahrenheit" ; bacnet:value "66"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.degrees-angular a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "degrees-angular" ; bacnet:value "90"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.degrees-celsius a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "degrees-celsius" ; bacnet:value "62"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.degrees-celsius-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "degrees-celsius-per-hour" ; bacnet:value "91"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.degrees-celsius-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "degrees-celsius-per-minute" ; bacnet:value "92"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.degrees-fahrenheit a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "degrees-fahrenheit" ; bacnet:value "64"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.degrees-fahrenheit-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "degrees-fahrenheit-per-hour" ; bacnet:value "93"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.degrees-fahrenheit-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "degrees-fahrenheit-per-minute" ; bacnet:value "94"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.degrees-kelvin a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "degrees-kelvin" ; bacnet:value "63"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.degrees-kelvin-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "degrees-kelvin-per-hour" ; bacnet:value "181"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.degrees-kelvin-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "degrees-kelvin-per-minute" ; bacnet:value "182"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.degrees-phase a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "degrees-phase" ; bacnet:value "14"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.delta-degrees-fahrenheit a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "delta-degrees-fahrenheit" ; bacnet:value "120"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.delta-degrees-kelvin a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "delta-degrees-kelvin" ; bacnet:value "121"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.farads a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "farads" ; bacnet:value "170"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.feet a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "feet" ; bacnet:value "33"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.feet-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "feet-per-minute" ; bacnet:value "77"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.feet-per-second a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "feet-per-second" ; bacnet:value "76"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.foot-candles a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "foot-candles" ; bacnet:value "38"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.grams a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "grams" ; bacnet:value "195"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.grams-of-water-per-kilogram-dry-air a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "grams-of-water-per-kilogram-dry-air" ; bacnet:value "28"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.grams-per-cubic-centimeter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "grams-per-cubic-centimeter" ; bacnet:value "221"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.grams-per-cubic-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "grams-per-cubic-meter" ; bacnet:value "217"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.grams-per-gram a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "grams-per-gram" ; bacnet:value "208"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.grams-per-kilogram a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "grams-per-kilogram" ; bacnet:value "210"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.grams-per-liter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "grams-per-liter" ; bacnet:value "214"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.grams-per-milliliter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "grams-per-milliliter" ; bacnet:value "213"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.grams-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "grams-per-minute" ; bacnet:value "155"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.grams-per-second a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "grams-per-second" ; bacnet:value "154"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.grams-per-square-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "grams-per-square-meter" ; bacnet:value "235"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.gray a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "gray" ; bacnet:value "225"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.hectopascals a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "hectopascals" ; bacnet:value "133"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.henrys a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "henrys" ; bacnet:value "171"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.hertz a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "hertz" ; bacnet:value "27"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.horsepower a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "horsepower" ; bacnet:value "51"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.hours a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "hours" ; bacnet:value "71"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.hundredths-seconds a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "hundredths-seconds" ; bacnet:value "158"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.imperial-gallons a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "imperial-gallons" ; bacnet:value "81"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.imperial-gallons-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "imperial-gallons-per-minute" ; bacnet:value "86"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.inches a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "inches" ; bacnet:value "32"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.inches-of-mercury a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "inches-of-mercury" ; bacnet:value "61"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.inches-of-water a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "inches-of-water" ; bacnet:value "58"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.joule-per-hours a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "joule-per-hours" ; bacnet:value "247"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.joule-seconds a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "joule-seconds" ; bacnet:value "183"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.joules a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "joules" ; bacnet:value "16"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.joules-per-cubic-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "joules-per-cubic-meter" ; bacnet:value "251"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.joules-per-degree-kelvin a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "joules-per-degree-kelvin" ; bacnet:value "127"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.joules-per-kilogram-degree-kelvin a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "joules-per-kilogram-degree-kelvin" ; bacnet:value "128"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.joules-per-kilogram-dry-air a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "joules-per-kilogram-dry-air" ; bacnet:value "23"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilo-btus a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilo-btus" ; bacnet:value "147"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilo-btus-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilo-btus-per-hour" ; bacnet:value "157"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilobecquerels a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilobecquerels" ; bacnet:value "223"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilograms a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilograms" ; bacnet:value "39"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilograms-per-cubic-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilograms-per-cubic-meter" ; bacnet:value "186"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilograms-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilograms-per-hour" ; bacnet:value "44"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilograms-per-kilogram a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilograms-per-kilogram" ; bacnet:value "209"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilograms-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilograms-per-minute" ; bacnet:value "43"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilograms-per-second a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilograms-per-second" ; bacnet:value "42"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilohertz a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilohertz" ; bacnet:value "129"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilohms a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilohms" ; bacnet:value "122"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilojoules a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilojoules" ; bacnet:value "17"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilojoules-per-degree-kelvin a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilojoules-per-degree-kelvin" ; bacnet:value "151"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilojoules-per-kilogram a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilojoules-per-kilogram" ; bacnet:value "125"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilojoules-per-kilogram-dry-air a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilojoules-per-kilogram-dry-air" ; bacnet:value "149"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilometers a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilometers" ; bacnet:value "193"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilometers-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilometers-per-hour" ; bacnet:value "75"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilopascals a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilopascals" ; bacnet:value "54"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilovolt-ampere-hours a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilovolt-ampere-hours" ; bacnet:value "240"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilovolt-ampere-hours-reactive a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilovolt-ampere-hours-reactive" ; bacnet:value "243"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilovolt-amperes a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilovolt-amperes" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilovolt-amperes-reactive a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilovolt-amperes-reactive" ; bacnet:value "12"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilovolts a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilovolts" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilowatt-hours a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilowatt-hours" ; bacnet:value "19"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilowatt-hours-per-square-foot a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilowatt-hours-per-square-foot" ; bacnet:value "138"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilowatt-hours-per-square-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilowatt-hours-per-square-meter" ; bacnet:value "137"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilowatt-hours-reactive a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilowatt-hours-reactive" ; bacnet:value "204"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.kilowatts a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "kilowatts" ; bacnet:value "48"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.liters a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "liters" ; bacnet:value "82"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.liters-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "liters-per-hour" ; bacnet:value "136"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.liters-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "liters-per-minute" ; bacnet:value "88"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.liters-per-second a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "liters-per-second" ; bacnet:value "87"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.lumens a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "lumens" ; bacnet:value "36"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.luxes a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "luxes" ; bacnet:value "37"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.mega-btus a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "mega-btus" ; bacnet:value "148"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megabecquerels a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megabecquerels" ; bacnet:value "224"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megahertz a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megahertz" ; bacnet:value "130"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megajoules a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megajoules" ; bacnet:value "126"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megajoules-per-degree-kelvin a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megajoules-per-degree-kelvin" ; bacnet:value "152"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megajoules-per-kilogram-dry-air a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megajoules-per-kilogram-dry-air" ; bacnet:value "150"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megajoules-per-square-foot a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megajoules-per-square-foot" ; bacnet:value "140"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megajoules-per-square-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megajoules-per-square-meter" ; bacnet:value "139"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megavolt-ampere-hours a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megavolt-ampere-hours" ; bacnet:value "241"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megavolt-ampere-hours-reactive a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megavolt-ampere-hours-reactive" ; bacnet:value "244"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megavolt-amperes a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megavolt-amperes" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megavolt-amperes-reactive a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megavolt-amperes-reactive" ; bacnet:value "13"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megavolts a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megavolts" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megawatt-hours a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megawatt-hours" ; bacnet:value "146"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megawatt-hours-reactive a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megawatt-hours-reactive" ; bacnet:value "205"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megawatts a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megawatts" ; bacnet:value "49"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.megohms a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "megohms" ; bacnet:value "123"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.meters a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "meters" ; bacnet:value "31"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.meters-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "meters-per-hour" ; bacnet:value "164"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.meters-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "meters-per-minute" ; bacnet:value "163"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.meters-per-second a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "meters-per-second" ; bacnet:value "74"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.meters-per-second-per-second a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "meters-per-second-per-second" ; bacnet:value "166"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.micrograms-per-cubic-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "micrograms-per-cubic-meter" ; bacnet:value "219"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.micrograms-per-liter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "micrograms-per-liter" ; bacnet:value "216"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.microgray a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "microgray" ; bacnet:value "227"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.micrometers a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "micrometers" ; bacnet:value "194"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.microsiemens a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "microsiemens" ; bacnet:value "190"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.microsieverts a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "microsieverts" ; bacnet:value "230"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.microsieverts-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "microsieverts-per-hour" ; bacnet:value "231"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.miles-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "miles-per-hour" ; bacnet:value "78"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.milliamperes a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "milliamperes" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.millibars a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "millibars" ; bacnet:value "134"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.milligrams a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "milligrams" ; bacnet:value "196"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.milligrams-per-cubic-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "milligrams-per-cubic-meter" ; bacnet:value "218"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.milligrams-per-gram a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "milligrams-per-gram" ; bacnet:value "211"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.milligrams-per-kilogram a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "milligrams-per-kilogram" ; bacnet:value "212"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.milligrams-per-liter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "milligrams-per-liter" ; bacnet:value "215"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.milligray a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "milligray" ; bacnet:value "226"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.milliliters a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "milliliters" ; bacnet:value "197"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.milliliters-per-second a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "milliliters-per-second" ; bacnet:value "198"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.millimeters a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "millimeters" ; bacnet:value "30"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.millimeters-of-mercury a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "millimeters-of-mercury" ; bacnet:value "59"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.millimeters-of-water a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "millimeters-of-water" ; bacnet:value "206"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.millimeters-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "millimeters-per-minute" ; bacnet:value "162"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.millimeters-per-second a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "millimeters-per-second" ; bacnet:value "161"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.milliohms a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "milliohms" ; bacnet:value "145"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.million-standard-cubic-feet-per-day a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "million-standard-cubic-feet-per-day" ; bacnet:value "47809"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.million-standard-cubic-feet-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "million-standard-cubic-feet-per-minute" ; bacnet:value "254"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.millirems a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "millirems" ; bacnet:value "47814"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.millirems-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "millirems-per-hour" ; bacnet:value "47815"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.milliseconds a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "milliseconds" ; bacnet:value "159"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.millisiemens a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "millisiemens" ; bacnet:value "202"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.millisieverts a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "millisieverts" ; bacnet:value "229"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.millivolts a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "millivolts" ; bacnet:value "124"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.milliwatts a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "milliwatts" ; bacnet:value "132"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.minutes a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "minutes" ; bacnet:value "72"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.minutes-per-degree-kelvin a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "minutes-per-degree-kelvin" ; bacnet:value "236"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.mole-percent a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "mole-percent" ; bacnet:value "252"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.months a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "months" ; bacnet:value "68"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.nanograms-per-cubic-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "nanograms-per-cubic-meter" ; bacnet:value "220"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.nephelometric-turbidity-unit a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "nephelometric-turbidity-unit" ; bacnet:value "233"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.newton a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "newton" ; bacnet:value "153"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.newton-meters a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "newton-meters" ; bacnet:value "160"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.newton-seconds a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "newton-seconds" ; bacnet:value "187"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.newtons-per-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "newtons-per-meter" ; bacnet:value "188"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.no-units a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "no-units" ; bacnet:value "95"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.ohm-meters a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "ohm-meters" ; bacnet:value "172"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.ohms a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "ohms" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.ohms-meter-squared-per-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "ohms-meter-squared-per-meter" ; bacnet:value "237"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.pH a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "pH" ; bacnet:value "234"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.parts-per-billion a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "parts-per-billion" ; bacnet:value "97"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.parts-per-million a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "parts-per-million" ; bacnet:value "96"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.pascal-seconds a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "pascal-seconds" ; bacnet:value "253"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.pascals a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "pascals" ; bacnet:value "53"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "per-hour" ; bacnet:value "131"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.per-mille a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "per-mille" ; bacnet:value "207"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "per-minute" ; bacnet:value "100"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.per-second a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "per-second" ; bacnet:value "101"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.percent a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "percent" ; bacnet:value "98"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.percent-obscuration-per-foot a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "percent-obscuration-per-foot" ; bacnet:value "143"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.percent-obscuration-per-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "percent-obscuration-per-meter" ; bacnet:value "144"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.percent-per-second a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "percent-per-second" ; bacnet:value "99"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.percent-relative-humidity a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "percent-relative-humidity" ; bacnet:value "29"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.pounds-force-per-square-inch a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "pounds-force-per-square-inch" ; bacnet:value "56"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.pounds-mass a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "pounds-mass" ; bacnet:value "40"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.pounds-mass-per-day a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "pounds-mass-per-day" ; bacnet:value "47812"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.pounds-mass-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "pounds-mass-per-hour" ; bacnet:value "46"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.pounds-mass-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "pounds-mass-per-minute" ; bacnet:value "45"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.pounds-mass-per-second a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "pounds-mass-per-second" ; bacnet:value "119"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.power-factor a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "power-factor" ; bacnet:value "15"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.psi-per-degree-fahrenheit a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "psi-per-degree-fahrenheit" ; bacnet:value "102"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.radians a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "radians" ; bacnet:value "103"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.radians-per-second a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "radians-per-second" ; bacnet:value "184"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.revolutions-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "revolutions-per-minute" ; bacnet:value "104"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.seconds a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "seconds" ; bacnet:value "73"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.siemens a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "siemens" ; bacnet:value "173"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.siemens-per-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "siemens-per-meter" ; bacnet:value "174"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.sieverts a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "sieverts" ; bacnet:value "228"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.square-centimeters a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "square-centimeters" ; bacnet:value "116"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.square-feet a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "square-feet" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.square-inches a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "square-inches" ; bacnet:value "115"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.square-meters a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "square-meters" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.square-meters-per-newton a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "square-meters-per-newton" ; bacnet:value "185"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.standard-cubic-feet-per-day a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "standard-cubic-feet-per-day" ; bacnet:value "47808"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.teslas a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "teslas" ; bacnet:value "175"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.therms a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "therms" ; bacnet:value "21"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.thousand-cubic-feet-per-day a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "thousand-cubic-feet-per-day" ; bacnet:value "47810"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.thousand-standard-cubic-feet-per-day a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "thousand-standard-cubic-feet-per-day" ; bacnet:value "47811"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.ton-hours a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "ton-hours" ; bacnet:value "22"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.tons a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "tons" ; bacnet:value "41"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.tons-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "tons-per-hour" ; bacnet:value "156"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.tons-refrigeration a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "tons-refrigeration" ; bacnet:value "52"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.us-gallons a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "us-gallons" ; bacnet:value "83"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.us-gallons-per-hour a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "us-gallons-per-hour" ; bacnet:value "192"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.us-gallons-per-minute a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "us-gallons-per-minute" ; bacnet:value "89"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.volt-ampere-hours a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "volt-ampere-hours" ; bacnet:value "239"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.volt-ampere-hours-reactive a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "volt-ampere-hours-reactive" ; bacnet:value "242"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.volt-amperes a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "volt-amperes" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.volt-amperes-reactive a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "volt-amperes-reactive" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.volt-square-hours a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "volt-square-hours" ; bacnet:value "245"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.volts a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "volts" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.volts-per-degree-kelvin a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "volts-per-degree-kelvin" ; bacnet:value "176"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.volts-per-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "volts-per-meter" ; bacnet:value "177"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.watt-hours a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "watt-hours" ; bacnet:value "18"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.watt-hours-per-cubic-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "watt-hours-per-cubic-meter" ; bacnet:value "250"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.watt-hours-reactive a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "watt-hours-reactive" ; bacnet:value "203"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.watts a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "watts" ; bacnet:value "47"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.watts-per-meter-per-degree-kelvin a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "watts-per-meter-per-degree-kelvin" ; bacnet:value "189"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.watts-per-square-foot a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "watts-per-square-foot" ; bacnet:value "34"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.watts-per-square-meter a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "watts-per-square-meter" ; bacnet:value "35"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.watts-per-square-meter-degree-kelvin a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "watts-per-square-meter-degree-kelvin" ; bacnet:value "141"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.webers a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "webers" ; bacnet:value "178"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.weeks a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "weeks" ; bacnet:value "69"^^xsd:nonNegativeInteger . bacnet:EngineeringUnits.years a bacnet:EngineeringUnitsEnumerationValue ; bacnet:name "years" ; bacnet:value "67"^^xsd:nonNegativeInteger . bacnet:EscalatorFault.comb-plate-fault a bacnet:EscalatorFaultEnumerationValue ; bacnet:name "comb-plate-fault" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:EscalatorFault.controller-fault a bacnet:EscalatorFaultEnumerationValue ; bacnet:name "controller-fault" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:EscalatorFault.controller-supply-fault a bacnet:EscalatorFaultEnumerationValue ; bacnet:name "controller-supply-fault" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:EscalatorFault.drive-and-motor-fault a bacnet:EscalatorFaultEnumerationValue ; bacnet:name "drive-and-motor-fault" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:EscalatorFault.drive-temperature-exceeded a bacnet:EscalatorFaultEnumerationValue ; bacnet:name "drive-temperature-exceeded" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:EscalatorFault.mechanical-component-fault a bacnet:EscalatorFaultEnumerationValue ; bacnet:name "mechanical-component-fault" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:EscalatorFault.overspeed-fault a bacnet:EscalatorFaultEnumerationValue ; bacnet:name "overspeed-fault" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:EscalatorFault.power-supply-fault a bacnet:EscalatorFaultEnumerationValue ; bacnet:name "power-supply-fault" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:EscalatorFault.safety-device-fault a bacnet:EscalatorFaultEnumerationValue ; bacnet:name "safety-device-fault" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:EscalatorMode.down a bacnet:EscalatorModeEnumerationValue ; bacnet:name "down" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:EscalatorMode.inspection a bacnet:EscalatorModeEnumerationValue ; bacnet:name "inspection" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:EscalatorMode.out-of-service a bacnet:EscalatorModeEnumerationValue ; bacnet:name "out-of-service" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:EscalatorMode.stop a bacnet:EscalatorModeEnumerationValue ; bacnet:name "stop" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:EscalatorMode.unknown a bacnet:EscalatorModeEnumerationValue ; bacnet:name "unknown" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:EscalatorMode.up a bacnet:EscalatorModeEnumerationValue ; bacnet:name "up" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:EscalatorOperationDirection.down-rated-speed a bacnet:EscalatorOperationDirectionEnumerationValue ; bacnet:name "down-rated-speed" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:EscalatorOperationDirection.down-reduced-speed a bacnet:EscalatorOperationDirectionEnumerationValue ; bacnet:name "down-reduced-speed" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:EscalatorOperationDirection.stopped a bacnet:EscalatorOperationDirectionEnumerationValue ; bacnet:name "stopped" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:EscalatorOperationDirection.unknown a bacnet:EscalatorOperationDirectionEnumerationValue ; bacnet:name "unknown" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:EscalatorOperationDirection.up-rated-speed a bacnet:EscalatorOperationDirectionEnumerationValue ; bacnet:name "up-rated-speed" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:EscalatorOperationDirection.up-reduced-speed a bacnet:EscalatorOperationDirectionEnumerationValue ; bacnet:name "up-reduced-speed" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:EventParameter.Extended.Parameters a bacnet:SequenceOf ; bacnet:memberType bacnet:EventParameter.Extended.ParametersChoice . bacnet:EventState.fault a bacnet:EventStateEnumerationValue ; bacnet:name "fault" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:EventState.high-limit a bacnet:EventStateEnumerationValue ; bacnet:name "high-limit" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:EventState.life-safety-alarm a bacnet:EventStateEnumerationValue ; bacnet:name "life-safety-alarm" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:EventState.low-limit a bacnet:EventStateEnumerationValue ; bacnet:name "low-limit" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:EventState.normal a bacnet:EventStateEnumerationValue ; bacnet:name "normal" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:EventState.offnormal a bacnet:EventStateEnumerationValue ; bacnet:name "offnormal" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:EventTransitionBits.to-fault a bacnet:EventTransitionBitsNamedBits ; bacnet:bit "1"^^xsd:nonNegativeInteger ; bacnet:name "to-fault" . bacnet:EventTransitionBits.to-normal a bacnet:EventTransitionBitsNamedBits ; bacnet:bit "2"^^xsd:nonNegativeInteger ; bacnet:name "to-normal" . bacnet:EventTransitionBits.to-offnormal a bacnet:EventTransitionBitsNamedBits ; bacnet:bit "0"^^xsd:nonNegativeInteger ; bacnet:name "to-offnormal" . bacnet:EventType.access-event a bacnet:EventTypeEnumerationValue ; bacnet:name "access-event" ; bacnet:value "13"^^xsd:nonNegativeInteger . bacnet:EventType.buffer-ready a bacnet:EventTypeEnumerationValue ; bacnet:name "buffer-ready" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:EventType.change-of-bitstring a bacnet:EventTypeEnumerationValue ; bacnet:name "change-of-bitstring" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:EventType.change-of-characterstring a bacnet:EventTypeEnumerationValue ; bacnet:name "change-of-characterstring" ; bacnet:value "17"^^xsd:nonNegativeInteger . bacnet:EventType.change-of-discrete-value a bacnet:EventTypeEnumerationValue ; bacnet:name "change-of-discrete-value" ; bacnet:value "21"^^xsd:nonNegativeInteger . bacnet:EventType.change-of-life-safety a bacnet:EventTypeEnumerationValue ; bacnet:name "change-of-life-safety" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:EventType.change-of-reliability a bacnet:EventTypeEnumerationValue ; bacnet:name "change-of-reliability" ; bacnet:value "19"^^xsd:nonNegativeInteger . bacnet:EventType.change-of-state a bacnet:EventTypeEnumerationValue ; bacnet:name "change-of-state" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:EventType.change-of-status-flags a bacnet:EventTypeEnumerationValue ; bacnet:name "change-of-status-flags" ; bacnet:value "18"^^xsd:nonNegativeInteger . bacnet:EventType.change-of-timer a bacnet:EventTypeEnumerationValue ; bacnet:name "change-of-timer" ; bacnet:value "22"^^xsd:nonNegativeInteger . bacnet:EventType.change-of-value a bacnet:EventTypeEnumerationValue ; bacnet:name "change-of-value" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:EventType.command-failure a bacnet:EventTypeEnumerationValue ; bacnet:name "command-failure" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:EventType.double-out-of-range a bacnet:EventTypeEnumerationValue ; bacnet:name "double-out-of-range" ; bacnet:value "14"^^xsd:nonNegativeInteger . bacnet:EventType.extended a bacnet:EventTypeEnumerationValue ; bacnet:name "extended" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:EventType.floating-limit a bacnet:EventTypeEnumerationValue ; bacnet:name "floating-limit" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:EventType.none a bacnet:EventTypeEnumerationValue ; bacnet:name "none" ; bacnet:value "20"^^xsd:nonNegativeInteger . bacnet:EventType.out-of-range a bacnet:EventTypeEnumerationValue ; bacnet:name "out-of-range" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:EventType.signed-out-of-range a bacnet:EventTypeEnumerationValue ; bacnet:name "signed-out-of-range" ; bacnet:value "15"^^xsd:nonNegativeInteger . bacnet:EventType.unsigned-out-of-range a bacnet:EventTypeEnumerationValue ; bacnet:name "unsigned-out-of-range" ; bacnet:value "16"^^xsd:nonNegativeInteger . bacnet:EventType.unsigned-range a bacnet:EventTypeEnumerationValue ; bacnet:name "unsigned-range" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:FaultParameter.FaultExtended.Parameters a bacnet:SequenceOf ; bacnet:memberType bacnet:FaultParameter.FaultExtended.ParametersChoice . bacnet:FaultType.fault-characterstring a bacnet:FaultTypeEnumerationValue ; bacnet:name "fault-characterstring" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:FaultType.fault-extended a bacnet:FaultTypeEnumerationValue ; bacnet:name "fault-extended" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:FaultType.fault-life-safety a bacnet:FaultTypeEnumerationValue ; bacnet:name "fault-life-safety" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:FaultType.fault-listed a bacnet:FaultTypeEnumerationValue ; bacnet:name "fault-listed" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:FaultType.fault-out-of-range a bacnet:FaultTypeEnumerationValue ; bacnet:name "fault-out-of-range" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:FaultType.fault-state a bacnet:FaultTypeEnumerationValue ; bacnet:name "fault-state" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:FaultType.fault-status-flags a bacnet:FaultTypeEnumerationValue ; bacnet:name "fault-status-flags" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:FaultType.none a bacnet:FaultTypeEnumerationValue ; bacnet:name "none" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:FileAccessMethod.record-access a bacnet:FileAccessMethodEnumerationValue ; bacnet:name "record-access" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:FileAccessMethod.stream-access a bacnet:FileAccessMethodEnumerationValue ; bacnet:name "stream-access" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:GetAlarmSummaryACK a bacnet:SequenceOf ; bacnet:memberType bacnet:GetAlarmSummaryACKSequence . bacnet:GetEnrollmentSummaryACK a bacnet:SequenceOf ; bacnet:memberType bacnet:GetEnrollmentSummaryACKSequence . bacnet:GetEventInformationACK.ListOfEventSummaries a bacnet:SequenceOf ; bacnet:memberType bacnet:GetEventInformationACK.ListOfEventSummariesSequence . bacnet:IPMode.bbmd a bacnet:IPModeEnumerationValue ; bacnet:name "bbmd" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:IPMode.foreign a bacnet:IPModeEnumerationValue ; bacnet:name "foreign" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:IPMode.normal a bacnet:IPModeEnumerationValue ; bacnet:name "normal" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LandingDoorStatus.LandingDoors a bacnet:SequenceOf ; bacnet:memberType bacnet:LandingDoorStatus.LandingDoorsSequence . bacnet:LifeSafetyMode.armed a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "armed" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:LifeSafetyMode.automatic-release-disabled a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "automatic-release-disabled" ; bacnet:value "13"^^xsd:nonNegativeInteger . bacnet:LifeSafetyMode.default a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "default" ; bacnet:value "14"^^xsd:nonNegativeInteger . bacnet:LifeSafetyMode.disabled a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "disabled" ; bacnet:value "12"^^xsd:nonNegativeInteger . bacnet:LifeSafetyMode.disarmed a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "disarmed" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:LifeSafetyMode.disconnected a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "disconnected" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:LifeSafetyMode.enabled a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "enabled" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:LifeSafetyMode.fast a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "fast" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:LifeSafetyMode.manned a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "manned" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:LifeSafetyMode.off a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "off" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LifeSafetyMode.on a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "on" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:LifeSafetyMode.prearmed a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "prearmed" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:LifeSafetyMode.slow a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "slow" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:LifeSafetyMode.test a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "test" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:LifeSafetyMode.unmanned a bacnet:LifeSafetyModeEnumerationValue ; bacnet:name "unmanned" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:LifeSafetyOperation.none a bacnet:LifeSafetyOperationEnumerationValue ; bacnet:name "none" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LifeSafetyOperation.reset a bacnet:LifeSafetyOperationEnumerationValue ; bacnet:name "reset" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:LifeSafetyOperation.reset-alarm a bacnet:LifeSafetyOperationEnumerationValue ; bacnet:name "reset-alarm" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:LifeSafetyOperation.reset-fault a bacnet:LifeSafetyOperationEnumerationValue ; bacnet:name "reset-fault" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:LifeSafetyOperation.silence a bacnet:LifeSafetyOperationEnumerationValue ; bacnet:name "silence" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:LifeSafetyOperation.silence-audible a bacnet:LifeSafetyOperationEnumerationValue ; bacnet:name "silence-audible" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:LifeSafetyOperation.silence-visual a bacnet:LifeSafetyOperationEnumerationValue ; bacnet:name "silence-visual" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:LifeSafetyOperation.unsilence a bacnet:LifeSafetyOperationEnumerationValue ; bacnet:name "unsilence" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:LifeSafetyOperation.unsilence-audible a bacnet:LifeSafetyOperationEnumerationValue ; bacnet:name "unsilence-audible" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:LifeSafetyOperation.unsilence-visual a bacnet:LifeSafetyOperationEnumerationValue ; bacnet:name "unsilence-visual" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.abnormal a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "abnormal" ; bacnet:value "16"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.active a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "active" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.alarm a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "alarm" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.blocked a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "blocked" ; bacnet:value "19"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.delayed a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "delayed" ; bacnet:value "18"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.duress a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "duress" ; bacnet:value "14"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.emergency-power a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "emergency-power" ; bacnet:value "17"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.fault a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "fault" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.fault-alarm a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "fault-alarm" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.fault-pre-alarm a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "fault-pre-alarm" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.general-alarm a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "general-alarm" ; bacnet:value "21"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.holdup a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "holdup" ; bacnet:value "13"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.local-alarm a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "local-alarm" ; bacnet:value "20"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.not-ready a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "not-ready" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.pre-alarm a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "pre-alarm" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.quiet a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "quiet" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.supervisory a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "supervisory" ; bacnet:value "22"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.tamper a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "tamper" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.tamper-alarm a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "tamper-alarm" ; bacnet:value "15"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.test-active a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "test-active" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.test-alarm a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "test-alarm" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.test-fault a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "test-fault" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.test-fault-alarm a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "test-fault-alarm" ; bacnet:value "12"^^xsd:nonNegativeInteger . bacnet:LifeSafetyState.test-supervisory a bacnet:LifeSafetyStateEnumerationValue ; bacnet:name "test-supervisory" ; bacnet:value "23"^^xsd:nonNegativeInteger . bacnet:LiftCarDirection.down a bacnet:LiftCarDirectionEnumerationValue ; bacnet:name "down" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:LiftCarDirection.none a bacnet:LiftCarDirectionEnumerationValue ; bacnet:name "none" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:LiftCarDirection.stopped a bacnet:LiftCarDirectionEnumerationValue ; bacnet:name "stopped" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:LiftCarDirection.unknown a bacnet:LiftCarDirectionEnumerationValue ; bacnet:name "unknown" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LiftCarDirection.up a bacnet:LiftCarDirectionEnumerationValue ; bacnet:name "up" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:LiftCarDirection.up-and-down a bacnet:LiftCarDirectionEnumerationValue ; bacnet:name "up-and-down" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:LiftCarDoorCommand.close a bacnet:LiftCarDoorCommandEnumerationValue ; bacnet:name "close" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:LiftCarDoorCommand.none a bacnet:LiftCarDoorCommandEnumerationValue ; bacnet:name "none" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LiftCarDoorCommand.open a bacnet:LiftCarDoorCommandEnumerationValue ; bacnet:name "open" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:LiftCarDriveStatus.accelerate a bacnet:LiftCarDriveStatusEnumerationValue ; bacnet:name "accelerate" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:LiftCarDriveStatus.braking a bacnet:LiftCarDriveStatusEnumerationValue ; bacnet:name "braking" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:LiftCarDriveStatus.decelerate a bacnet:LiftCarDriveStatusEnumerationValue ; bacnet:name "decelerate" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:LiftCarDriveStatus.multi-floor-jump a bacnet:LiftCarDriveStatusEnumerationValue ; bacnet:name "multi-floor-jump" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:LiftCarDriveStatus.rated-speed a bacnet:LiftCarDriveStatusEnumerationValue ; bacnet:name "rated-speed" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:LiftCarDriveStatus.single-floor-jump a bacnet:LiftCarDriveStatusEnumerationValue ; bacnet:name "single-floor-jump" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:LiftCarDriveStatus.stationary a bacnet:LiftCarDriveStatusEnumerationValue ; bacnet:name "stationary" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:LiftCarDriveStatus.three-floor-jump a bacnet:LiftCarDriveStatusEnumerationValue ; bacnet:name "three-floor-jump" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:LiftCarDriveStatus.two-floor-jump a bacnet:LiftCarDriveStatusEnumerationValue ; bacnet:name "two-floor-jump" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:LiftCarDriveStatus.unknown a bacnet:LiftCarDriveStatusEnumerationValue ; bacnet:name "unknown" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LiftCarMode.attendant-control a bacnet:LiftCarModeEnumerationValue ; bacnet:name "attendant-control" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:LiftCarMode.cabinet-recall a bacnet:LiftCarModeEnumerationValue ; bacnet:name "cabinet-recall" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:LiftCarMode.earthquake-operation a bacnet:LiftCarModeEnumerationValue ; bacnet:name "earthquake-operation" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:LiftCarMode.emergency-power a bacnet:LiftCarModeEnumerationValue ; bacnet:name "emergency-power" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:LiftCarMode.fire-operation a bacnet:LiftCarModeEnumerationValue ; bacnet:name "fire-operation" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:LiftCarMode.firefighter-control a bacnet:LiftCarModeEnumerationValue ; bacnet:name "firefighter-control" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:LiftCarMode.homing a bacnet:LiftCarModeEnumerationValue ; bacnet:name "homing" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:LiftCarMode.inspection a bacnet:LiftCarModeEnumerationValue ; bacnet:name "inspection" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:LiftCarMode.normal a bacnet:LiftCarModeEnumerationValue ; bacnet:name "normal" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:LiftCarMode.occupant-evacuation a bacnet:LiftCarModeEnumerationValue ; bacnet:name "occupant-evacuation" ; bacnet:value "13"^^xsd:nonNegativeInteger . bacnet:LiftCarMode.out-of-service a bacnet:LiftCarModeEnumerationValue ; bacnet:name "out-of-service" ; bacnet:value "12"^^xsd:nonNegativeInteger . bacnet:LiftCarMode.parking a bacnet:LiftCarModeEnumerationValue ; bacnet:name "parking" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:LiftCarMode.unknown a bacnet:LiftCarModeEnumerationValue ; bacnet:name "unknown" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LiftCarMode.vip a bacnet:LiftCarModeEnumerationValue ; bacnet:name "vip" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:LiftFault.call-button-stuck a bacnet:LiftFaultEnumerationValue ; bacnet:name "call-button-stuck" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:LiftFault.car-stopped-outside-landing-zone a bacnet:LiftFaultEnumerationValue ; bacnet:name "car-stopped-outside-landing-zone" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:LiftFault.controller-fault a bacnet:LiftFaultEnumerationValue ; bacnet:name "controller-fault" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LiftFault.controller-supply-fault a bacnet:LiftFaultEnumerationValue ; bacnet:name "controller-supply-fault" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:LiftFault.door-closing-fault a bacnet:LiftFaultEnumerationValue ; bacnet:name "door-closing-fault" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:LiftFault.door-opening-fault a bacnet:LiftFaultEnumerationValue ; bacnet:name "door-opening-fault" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:LiftFault.drive-and-motor-fault a bacnet:LiftFaultEnumerationValue ; bacnet:name "drive-and-motor-fault" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:LiftFault.drive-temperature-exceeded a bacnet:LiftFaultEnumerationValue ; bacnet:name "drive-temperature-exceeded" ; bacnet:value "15"^^xsd:nonNegativeInteger . bacnet:LiftFault.governor-and-safety-gear-fault a bacnet:LiftFaultEnumerationValue ; bacnet:name "governor-and-safety-gear-fault" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:LiftFault.lift-shaft-device-fault a bacnet:LiftFaultEnumerationValue ; bacnet:name "lift-shaft-device-fault" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:LiftFault.load-measurement-fault a bacnet:LiftFaultEnumerationValue ; bacnet:name "load-measurement-fault" ; bacnet:value "16"^^xsd:nonNegativeInteger . bacnet:LiftFault.position-lost a bacnet:LiftFaultEnumerationValue ; bacnet:name "position-lost" ; bacnet:value "14"^^xsd:nonNegativeInteger . bacnet:LiftFault.power-supply-fault a bacnet:LiftFaultEnumerationValue ; bacnet:name "power-supply-fault" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:LiftFault.runtime-limit-exceeded a bacnet:LiftFaultEnumerationValue ; bacnet:name "runtime-limit-exceeded" ; bacnet:value "13"^^xsd:nonNegativeInteger . bacnet:LiftFault.safety-interlock-fault a bacnet:LiftFaultEnumerationValue ; bacnet:name "safety-interlock-fault" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:LiftFault.self-test-failure a bacnet:LiftFaultEnumerationValue ; bacnet:name "self-test-failure" ; bacnet:value "12"^^xsd:nonNegativeInteger . bacnet:LiftFault.start-failure a bacnet:LiftFaultEnumerationValue ; bacnet:name "start-failure" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:LiftGroupMode.down-peak a bacnet:LiftGroupModeEnumerationValue ; bacnet:name "down-peak" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:LiftGroupMode.emergency-power a bacnet:LiftGroupModeEnumerationValue ; bacnet:name "emergency-power" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:LiftGroupMode.four-way a bacnet:LiftGroupModeEnumerationValue ; bacnet:name "four-way" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:LiftGroupMode.normal a bacnet:LiftGroupModeEnumerationValue ; bacnet:name "normal" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:LiftGroupMode.two-way a bacnet:LiftGroupModeEnumerationValue ; bacnet:name "two-way" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:LiftGroupMode.unknown a bacnet:LiftGroupModeEnumerationValue ; bacnet:name "unknown" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LiftGroupMode.up-peak a bacnet:LiftGroupModeEnumerationValue ; bacnet:name "up-peak" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:LightingInProgress.fade-active a bacnet:LightingInProgressEnumerationValue ; bacnet:name "fade-active" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:LightingInProgress.idle a bacnet:LightingInProgressEnumerationValue ; bacnet:name "idle" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LightingInProgress.not-controlled a bacnet:LightingInProgressEnumerationValue ; bacnet:name "not-controlled" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:LightingInProgress.other a bacnet:LightingInProgressEnumerationValue ; bacnet:name "other" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:LightingInProgress.ramp-active a bacnet:LightingInProgressEnumerationValue ; bacnet:name "ramp-active" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:LightingOperation.fade-to a bacnet:LightingOperationEnumerationValue ; bacnet:name "fade-to" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:LightingOperation.none a bacnet:LightingOperationEnumerationValue ; bacnet:name "none" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LightingOperation.ramp-to a bacnet:LightingOperationEnumerationValue ; bacnet:name "ramp-to" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:LightingOperation.step-down a bacnet:LightingOperationEnumerationValue ; bacnet:name "step-down" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:LightingOperation.step-off a bacnet:LightingOperationEnumerationValue ; bacnet:name "step-off" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:LightingOperation.step-on a bacnet:LightingOperationEnumerationValue ; bacnet:name "step-on" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:LightingOperation.step-up a bacnet:LightingOperationEnumerationValue ; bacnet:name "step-up" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:LightingOperation.stop a bacnet:LightingOperationEnumerationValue ; bacnet:name "stop" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:LightingOperation.warn a bacnet:LightingOperationEnumerationValue ; bacnet:name "warn" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:LightingOperation.warn-off a bacnet:LightingOperationEnumerationValue ; bacnet:name "warn-off" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:LightingOperation.warn-relinquish a bacnet:LightingOperationEnumerationValue ; bacnet:name "warn-relinquish" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:LightingTransition.fade a bacnet:LightingTransitionEnumerationValue ; bacnet:name "fade" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:LightingTransition.none a bacnet:LightingTransitionEnumerationValue ; bacnet:name "none" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LightingTransition.ramp a bacnet:LightingTransitionEnumerationValue ; bacnet:name "ramp" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:LimitEnable.high-limit-enable a bacnet:LimitEnableNamedBits ; bacnet:bit "1"^^xsd:nonNegativeInteger ; bacnet:name "high-limit-enable" . bacnet:LimitEnable.low-limit-enable a bacnet:LimitEnableNamedBits ; bacnet:bit "0"^^xsd:nonNegativeInteger ; bacnet:name "low-limit-enable" . bacnet:LockStatus.lock-fault a bacnet:LockStatusEnumerationValue ; bacnet:name "lock-fault" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:LockStatus.locked a bacnet:LockStatusEnumerationValue ; bacnet:name "locked" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LockStatus.unknown a bacnet:LockStatusEnumerationValue ; bacnet:name "unknown" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:LockStatus.unlocked a bacnet:LockStatusEnumerationValue ; bacnet:name "unlocked" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:LockStatus.unused a bacnet:LockStatusEnumerationValue ; bacnet:name "unused" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:LogData.LogData a bacnet:SequenceOf ; bacnet:memberType bacnet:LogData.LogDataChoice . bacnet:LogStatus.buffer-purged a bacnet:LogStatusNamedBits ; bacnet:bit "1"^^xsd:nonNegativeInteger ; bacnet:name "buffer-purged" . bacnet:LogStatus.log-disabled a bacnet:LogStatusNamedBits ; bacnet:bit "0"^^xsd:nonNegativeInteger ; bacnet:name "log-disabled" . bacnet:LogStatus.log-interrupted a bacnet:LogStatusNamedBits ; bacnet:bit "2"^^xsd:nonNegativeInteger ; bacnet:name "log-interrupted" . bacnet:LoggingType.cov a bacnet:LoggingTypeEnumerationValue ; bacnet:name "cov" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:LoggingType.polled a bacnet:LoggingTypeEnumerationValue ; bacnet:name "polled" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:LoggingType.triggered a bacnet:LoggingTypeEnumerationValue ; bacnet:name "triggered" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:Maintenance.need-service-inoperative a bacnet:MaintenanceEnumerationValue ; bacnet:name "need-service-inoperative" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:Maintenance.need-service-operational a bacnet:MaintenanceEnumerationValue ; bacnet:name "need-service-operational" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:Maintenance.none a bacnet:MaintenanceEnumerationValue ; bacnet:name "none" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:Maintenance.periodic-test a bacnet:MaintenanceEnumerationValue ; bacnet:name "periodic-test" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:NetworkNumberQuality.configured a bacnet:NetworkNumberQualityEnumerationValue ; bacnet:name "configured" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:NetworkNumberQuality.learned a bacnet:NetworkNumberQualityEnumerationValue ; bacnet:name "learned" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:NetworkNumberQuality.learned-configured a bacnet:NetworkNumberQualityEnumerationValue ; bacnet:name "learned-configured" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:NetworkNumberQuality.unknown a bacnet:NetworkNumberQualityEnumerationValue ; bacnet:name "unknown" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:NetworkPortCommand.discard-changes a bacnet:NetworkPortCommandEnumerationValue ; bacnet:name "discard-changes" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:NetworkPortCommand.disconnect a bacnet:NetworkPortCommandEnumerationValue ; bacnet:name "disconnect" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:NetworkPortCommand.idle a bacnet:NetworkPortCommandEnumerationValue ; bacnet:name "idle" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:NetworkPortCommand.renew-dhcp a bacnet:NetworkPortCommandEnumerationValue ; bacnet:name "renew-dhcp" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:NetworkPortCommand.renew-fd-registration a bacnet:NetworkPortCommandEnumerationValue ; bacnet:name "renew-fd-registration" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:NetworkPortCommand.restart-autonegotiation a bacnet:NetworkPortCommandEnumerationValue ; bacnet:name "restart-autonegotiation" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:NetworkPortCommand.restart-port a bacnet:NetworkPortCommandEnumerationValue ; bacnet:name "restart-port" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:NetworkPortCommand.restart-slave-discovery a bacnet:NetworkPortCommandEnumerationValue ; bacnet:name "restart-slave-discovery" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:NetworkSecurityPolicy a sh:NodeShape ; rdfs:label "NetworkSecurityPolicy" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:SecurityPolicyEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:security-level ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:port-id ] . bacnet:NetworkType.arcnet a bacnet:NetworkTypeEnumerationValue ; bacnet:name "arcnet" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:NetworkType.ethernet a bacnet:NetworkTypeEnumerationValue ; bacnet:name "ethernet" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:NetworkType.ipv4 a bacnet:NetworkTypeEnumerationValue ; bacnet:name "ipv4" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:NetworkType.ipv6 a bacnet:NetworkTypeEnumerationValue ; bacnet:name "ipv6" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:NetworkType.lontalk a bacnet:NetworkTypeEnumerationValue ; bacnet:name "lontalk" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:NetworkType.mstp a bacnet:NetworkTypeEnumerationValue ; bacnet:name "mstp" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:NetworkType.ptp a bacnet:NetworkTypeEnumerationValue ; bacnet:name "ptp" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:NetworkType.serial a bacnet:NetworkTypeEnumerationValue ; bacnet:name "serial" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:NetworkType.virtual a bacnet:NetworkTypeEnumerationValue ; bacnet:name "virtual" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:NetworkType.zigbee a bacnet:NetworkTypeEnumerationValue ; bacnet:name "zigbee" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:NodeType.area a bacnet:NodeTypeEnumerationValue ; bacnet:name "area" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:NodeType.building a bacnet:NodeTypeEnumerationValue ; bacnet:name "building" ; bacnet:value "13"^^xsd:nonNegativeInteger . bacnet:NodeType.collection a bacnet:NodeTypeEnumerationValue ; bacnet:name "collection" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:NodeType.device a bacnet:NodeTypeEnumerationValue ; bacnet:name "device" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:NodeType.equipment a bacnet:NodeTypeEnumerationValue ; bacnet:name "equipment" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:NodeType.floor a bacnet:NodeTypeEnumerationValue ; bacnet:name "floor" ; bacnet:value "14"^^xsd:nonNegativeInteger . bacnet:NodeType.functional a bacnet:NodeTypeEnumerationValue ; bacnet:name "functional" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:NodeType.member a bacnet:NodeTypeEnumerationValue ; bacnet:name "member" ; bacnet:value "18"^^xsd:nonNegativeInteger . bacnet:NodeType.module a bacnet:NodeTypeEnumerationValue ; bacnet:name "module" ; bacnet:value "16"^^xsd:nonNegativeInteger . bacnet:NodeType.network a bacnet:NodeTypeEnumerationValue ; bacnet:name "network" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:NodeType.organizational a bacnet:NodeTypeEnumerationValue ; bacnet:name "organizational" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:NodeType.other a bacnet:NodeTypeEnumerationValue ; bacnet:name "other" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:NodeType.point a bacnet:NodeTypeEnumerationValue ; bacnet:name "point" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:NodeType.property a bacnet:NodeTypeEnumerationValue ; bacnet:name "property" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:NodeType.protocol a bacnet:NodeTypeEnumerationValue ; bacnet:name "protocol" ; bacnet:value "19"^^xsd:nonNegativeInteger . bacnet:NodeType.room a bacnet:NodeTypeEnumerationValue ; bacnet:name "room" ; bacnet:value "20"^^xsd:nonNegativeInteger . bacnet:NodeType.section a bacnet:NodeTypeEnumerationValue ; bacnet:name "section" ; bacnet:value "15"^^xsd:nonNegativeInteger . bacnet:NodeType.subsystem a bacnet:NodeTypeEnumerationValue ; bacnet:name "subsystem" ; bacnet:value "12"^^xsd:nonNegativeInteger . bacnet:NodeType.system a bacnet:NodeTypeEnumerationValue ; bacnet:name "system" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:NodeType.tree a bacnet:NodeTypeEnumerationValue ; bacnet:name "tree" ; bacnet:value "17"^^xsd:nonNegativeInteger . bacnet:NodeType.unknown a bacnet:NodeTypeEnumerationValue ; bacnet:name "unknown" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:NodeType.zone a bacnet:NodeTypeEnumerationValue ; bacnet:name "zone" ; bacnet:value "21"^^xsd:nonNegativeInteger . bacnet:NotificationParameters.ComplexEventType a bacnet:SequenceOf ; bacnet:memberType bacnet:PropertyValue . bacnet:NotificationParameters.Extended.Parameters a bacnet:SequenceOf ; bacnet:memberType bacnet:NotificationParameters.Extended.ParametersChoice . bacnet:NotifyType.ack-notification a bacnet:NotifyTypeEnumerationValue ; bacnet:name "ack-notification" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:NotifyType.alarm a bacnet:NotifyTypeEnumerationValue ; bacnet:name "alarm" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:NotifyType.event a bacnet:NotifyTypeEnumerationValue ; bacnet:name "event" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:ObjectPropertyValue a sh:NodeShape ; rdfs:label "ObjectPropertyValue" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ], [ a sh:PropertyShape ; bacnet:comment "used only with array datatype if omitted with an array the entire array is referenced"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ], [ a sh:PropertyShape ; bacnet:comment "any datatype appropriate for the specified property"@en ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority ] . bacnet:ObjectType.network-security a bacnet:ObjectTypeEnumerationValue ; bacnet:name "network-security" ; bacnet:value "38"^^xsd:nonNegativeInteger . bacnet:ObjectTypesSupported.access-credential a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "32"^^xsd:nonNegativeInteger ; bacnet:name "access-credential" . bacnet:ObjectTypesSupported.access-door a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "30"^^xsd:nonNegativeInteger ; bacnet:name "access-door" . bacnet:ObjectTypesSupported.access-point a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "33"^^xsd:nonNegativeInteger ; bacnet:name "access-point" . bacnet:ObjectTypesSupported.access-rights a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "34"^^xsd:nonNegativeInteger ; bacnet:name "access-rights" . bacnet:ObjectTypesSupported.access-user a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "35"^^xsd:nonNegativeInteger ; bacnet:name "access-user" . bacnet:ObjectTypesSupported.access-zone a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "36"^^xsd:nonNegativeInteger ; bacnet:name "access-zone" . bacnet:ObjectTypesSupported.accumulator a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "23"^^xsd:nonNegativeInteger ; bacnet:name "accumulator" . bacnet:ObjectTypesSupported.alert-enrollment a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "52"^^xsd:nonNegativeInteger ; bacnet:name "alert-enrollment" . bacnet:ObjectTypesSupported.analog-input a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "0"^^xsd:nonNegativeInteger ; bacnet:name "analog-input" . bacnet:ObjectTypesSupported.analog-output a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "1"^^xsd:nonNegativeInteger ; bacnet:name "analog-output" . bacnet:ObjectTypesSupported.analog-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "2"^^xsd:nonNegativeInteger ; bacnet:name "analog-value" . bacnet:ObjectTypesSupported.averaging a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "18"^^xsd:nonNegativeInteger ; bacnet:name "averaging" . bacnet:ObjectTypesSupported.binary-input a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "3"^^xsd:nonNegativeInteger ; bacnet:name "binary-input" . bacnet:ObjectTypesSupported.binary-lighting-output a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "55"^^xsd:nonNegativeInteger ; bacnet:name "binary-lighting-output" . bacnet:ObjectTypesSupported.binary-output a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "4"^^xsd:nonNegativeInteger ; bacnet:name "binary-output" . bacnet:ObjectTypesSupported.binary-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "5"^^xsd:nonNegativeInteger ; bacnet:name "binary-value" . bacnet:ObjectTypesSupported.bitstring-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "39"^^xsd:nonNegativeInteger ; bacnet:name "bitstring-value" . bacnet:ObjectTypesSupported.calendar a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "6"^^xsd:nonNegativeInteger ; bacnet:name "calendar" . bacnet:ObjectTypesSupported.channel a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "53"^^xsd:nonNegativeInteger ; bacnet:name "channel" . bacnet:ObjectTypesSupported.characterstring-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "40"^^xsd:nonNegativeInteger ; bacnet:name "characterstring-value" . bacnet:ObjectTypesSupported.command a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "7"^^xsd:nonNegativeInteger ; bacnet:name "command" . bacnet:ObjectTypesSupported.credential-data-input a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "37"^^xsd:nonNegativeInteger ; bacnet:name "credential-data-input" . bacnet:ObjectTypesSupported.date-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "42"^^xsd:nonNegativeInteger ; bacnet:name "date-value" . bacnet:ObjectTypesSupported.datepattern-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "41"^^xsd:nonNegativeInteger ; bacnet:name "datepattern-value" . bacnet:ObjectTypesSupported.datetime-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "44"^^xsd:nonNegativeInteger ; bacnet:name "datetime-value" . bacnet:ObjectTypesSupported.datetimepattern-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "43"^^xsd:nonNegativeInteger ; bacnet:name "datetimepattern-value" . bacnet:ObjectTypesSupported.device a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "8"^^xsd:nonNegativeInteger ; bacnet:name "device" . bacnet:ObjectTypesSupported.elevator-group a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "57"^^xsd:nonNegativeInteger ; bacnet:name "elevator-group" . bacnet:ObjectTypesSupported.escalator a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "58"^^xsd:nonNegativeInteger ; bacnet:name "escalator" . bacnet:ObjectTypesSupported.event-enrollment a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "9"^^xsd:nonNegativeInteger ; bacnet:name "event-enrollment" . bacnet:ObjectTypesSupported.event-log a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "25"^^xsd:nonNegativeInteger ; bacnet:name "event-log" . bacnet:ObjectTypesSupported.file a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "10"^^xsd:nonNegativeInteger ; bacnet:name "file" . bacnet:ObjectTypesSupported.global-group a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "26"^^xsd:nonNegativeInteger ; bacnet:name "global-group" . bacnet:ObjectTypesSupported.group a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "11"^^xsd:nonNegativeInteger ; bacnet:name "group" . bacnet:ObjectTypesSupported.integer-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "45"^^xsd:nonNegativeInteger ; bacnet:name "integer-value" . bacnet:ObjectTypesSupported.large-analog-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "46"^^xsd:nonNegativeInteger ; bacnet:name "large-analog-value" . bacnet:ObjectTypesSupported.life-safety-point a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "21"^^xsd:nonNegativeInteger ; bacnet:name "life-safety-point" . bacnet:ObjectTypesSupported.life-safety-zone a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "22"^^xsd:nonNegativeInteger ; bacnet:name "life-safety-zone" . bacnet:ObjectTypesSupported.lift a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "59"^^xsd:nonNegativeInteger ; bacnet:name "lift" . bacnet:ObjectTypesSupported.lighting-output a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "54"^^xsd:nonNegativeInteger ; bacnet:name "lighting-output" . bacnet:ObjectTypesSupported.load-control a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "28"^^xsd:nonNegativeInteger ; bacnet:name "load-control" . bacnet:ObjectTypesSupported.loop a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "12"^^xsd:nonNegativeInteger ; bacnet:name "loop" . bacnet:ObjectTypesSupported.multi-state-input a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "13"^^xsd:nonNegativeInteger ; bacnet:name "multi-state-input" . bacnet:ObjectTypesSupported.multi-state-output a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "14"^^xsd:nonNegativeInteger ; bacnet:name "multi-state-output" . bacnet:ObjectTypesSupported.multi-state-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "19"^^xsd:nonNegativeInteger ; bacnet:name "multi-state-value" . bacnet:ObjectTypesSupported.network-port a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "56"^^xsd:nonNegativeInteger ; bacnet:name "network-port" . bacnet:ObjectTypesSupported.network-security a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "38"^^xsd:nonNegativeInteger ; bacnet:name "network-security" . bacnet:ObjectTypesSupported.notification-class a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "15"^^xsd:nonNegativeInteger ; bacnet:name "notification-class" . bacnet:ObjectTypesSupported.notification-forwarder a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "51"^^xsd:nonNegativeInteger ; bacnet:name "notification-forwarder" . bacnet:ObjectTypesSupported.octetstring-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "47"^^xsd:nonNegativeInteger ; bacnet:name "octetstring-value" . bacnet:ObjectTypesSupported.positive-integer-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "48"^^xsd:nonNegativeInteger ; bacnet:name "positive-integer-value" . bacnet:ObjectTypesSupported.program a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "16"^^xsd:nonNegativeInteger ; bacnet:name "program" . bacnet:ObjectTypesSupported.pulse-converter a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "24"^^xsd:nonNegativeInteger ; bacnet:name "pulse-converter" . bacnet:ObjectTypesSupported.schedule a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "17"^^xsd:nonNegativeInteger ; bacnet:name "schedule" . bacnet:ObjectTypesSupported.structured-view a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "29"^^xsd:nonNegativeInteger ; bacnet:name "structured-view" . bacnet:ObjectTypesSupported.time-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "50"^^xsd:nonNegativeInteger ; bacnet:name "time-value" . bacnet:ObjectTypesSupported.timepattern-value a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "49"^^xsd:nonNegativeInteger ; bacnet:name "timepattern-value" . bacnet:ObjectTypesSupported.timer a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "31"^^xsd:nonNegativeInteger ; bacnet:name "timer" . bacnet:ObjectTypesSupported.trend-log a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "20"^^xsd:nonNegativeInteger ; bacnet:name "trend-log" . bacnet:ObjectTypesSupported.trend-log-multiple a bacnet:ObjectTypesSupportedNamedBits ; bacnet:bit "27"^^xsd:nonNegativeInteger ; bacnet:name "trend-log-multiple" . bacnet:PDU a sh:NodeShape ; rdfs:label "PDU" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ConfirmedRequestPDU ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:confirmed-request-pdu ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:UnconfirmedRequestPDU ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unconfirmed-request-pdu ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:SimpleACKPDU ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:simple-ack-pdu ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ComplexACKPDU ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:complex-ack-pdu ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:SegmentACKPDU ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:segment-ack-pdu ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ErrorPDU ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:error-pdu ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:RejectPDU ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reject-pdu ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AbortPDU ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:abort-pdu ] ] ) . bacnet:Polarity.normal a bacnet:PolarityEnumerationValue ; bacnet:name "normal" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:Polarity.reverse a bacnet:PolarityEnumerationValue ; bacnet:name "reverse" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:PriorityArray a bacnet:Array ; bacnet:memberType bacnet:PriorityValue . bacnet:PriorityFilter.automatic-life-safety a bacnet:PriorityFilterNamedBits ; bacnet:bit "1"^^xsd:nonNegativeInteger ; bacnet:name "automatic-life-safety" . bacnet:PriorityFilter.critical-equipment-controls a bacnet:PriorityFilterNamedBits ; bacnet:bit "4"^^xsd:nonNegativeInteger ; bacnet:name "critical-equipment-controls" . bacnet:PriorityFilter.manual-life-safety a bacnet:PriorityFilterNamedBits ; bacnet:bit "0"^^xsd:nonNegativeInteger ; bacnet:name "manual-life-safety" . bacnet:PriorityFilter.manual-operator a bacnet:PriorityFilterNamedBits ; bacnet:bit "7"^^xsd:nonNegativeInteger ; bacnet:name "manual-operator" . bacnet:PriorityFilter.minimum-on-off a bacnet:PriorityFilterNamedBits ; bacnet:bit "5"^^xsd:nonNegativeInteger ; bacnet:name "minimum-on-off" . bacnet:PriorityFilter.priority-10 a bacnet:PriorityFilterNamedBits ; bacnet:bit "9"^^xsd:nonNegativeInteger ; bacnet:name "priority-10" . bacnet:PriorityFilter.priority-11 a bacnet:PriorityFilterNamedBits ; bacnet:bit "10"^^xsd:nonNegativeInteger ; bacnet:name "priority-11" . bacnet:PriorityFilter.priority-12 a bacnet:PriorityFilterNamedBits ; bacnet:bit "11"^^xsd:nonNegativeInteger ; bacnet:name "priority-12" . bacnet:PriorityFilter.priority-13 a bacnet:PriorityFilterNamedBits ; bacnet:bit "12"^^xsd:nonNegativeInteger ; bacnet:name "priority-13" . bacnet:PriorityFilter.priority-14 a bacnet:PriorityFilterNamedBits ; bacnet:bit "13"^^xsd:nonNegativeInteger ; bacnet:name "priority-14" . bacnet:PriorityFilter.priority-15 a bacnet:PriorityFilterNamedBits ; bacnet:bit "14"^^xsd:nonNegativeInteger ; bacnet:name "priority-15" . bacnet:PriorityFilter.priority-16 a bacnet:PriorityFilterNamedBits ; bacnet:bit "15"^^xsd:nonNegativeInteger ; bacnet:name "priority-16" . bacnet:PriorityFilter.priority-3 a bacnet:PriorityFilterNamedBits ; bacnet:bit "2"^^xsd:nonNegativeInteger ; bacnet:name "priority-3" . bacnet:PriorityFilter.priority-4 a bacnet:PriorityFilterNamedBits ; bacnet:bit "3"^^xsd:nonNegativeInteger ; bacnet:name "priority-4" . bacnet:PriorityFilter.priority-7 a bacnet:PriorityFilterNamedBits ; bacnet:bit "6"^^xsd:nonNegativeInteger ; bacnet:name "priority-7" . bacnet:PriorityFilter.priority-9 a bacnet:PriorityFilterNamedBits ; bacnet:bit "8"^^xsd:nonNegativeInteger ; bacnet:name "priority-9" . bacnet:ProgramError.internal a bacnet:ProgramErrorEnumerationValue ; bacnet:name "internal" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:ProgramError.load-failed a bacnet:ProgramErrorEnumerationValue ; bacnet:name "load-failed" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:ProgramError.normal a bacnet:ProgramErrorEnumerationValue ; bacnet:name "normal" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:ProgramError.other a bacnet:ProgramErrorEnumerationValue ; bacnet:name "other" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:ProgramError.program a bacnet:ProgramErrorEnumerationValue ; bacnet:name "program" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:ProgramRequest.halt a bacnet:ProgramRequestEnumerationValue ; bacnet:name "halt" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:ProgramRequest.load a bacnet:ProgramRequestEnumerationValue ; bacnet:name "load" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:ProgramRequest.ready a bacnet:ProgramRequestEnumerationValue ; bacnet:name "ready" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:ProgramRequest.restart a bacnet:ProgramRequestEnumerationValue ; bacnet:name "restart" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:ProgramRequest.run a bacnet:ProgramRequestEnumerationValue ; bacnet:name "run" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:ProgramRequest.unload a bacnet:ProgramRequestEnumerationValue ; bacnet:name "unload" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:ProgramState.halted a bacnet:ProgramStateEnumerationValue ; bacnet:name "halted" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:ProgramState.idle a bacnet:ProgramStateEnumerationValue ; bacnet:name "idle" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:ProgramState.loading a bacnet:ProgramStateEnumerationValue ; bacnet:name "loading" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:ProgramState.running a bacnet:ProgramStateEnumerationValue ; bacnet:name "running" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:ProgramState.unloading a bacnet:ProgramStateEnumerationValue ; bacnet:name "unloading" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:ProgramState.waiting a bacnet:ProgramStateEnumerationValue ; bacnet:name "waiting" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.absentee-limit a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "absentee-limit" ; bacnet:predicate bacnet:absentee-limit ; bacnet:value "244"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.accepted-modes a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "accepted-modes" ; bacnet:predicate bacnet:accepted-modes ; bacnet:value "175"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.access-alarm-events a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "access-alarm-events" ; bacnet:predicate bacnet:access-alarm-events ; bacnet:value "245"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.access-doors a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "access-doors" ; bacnet:predicate bacnet:access-doors ; bacnet:value "246"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.access-event a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "access-event" ; bacnet:predicate bacnet:access-event ; bacnet:value "247"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.access-event-authentication-factor a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "access-event-authentication-factor" ; bacnet:predicate bacnet:access-event-authentication-factor ; bacnet:value "248"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.access-event-credential a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "access-event-credential" ; bacnet:predicate bacnet:access-event-credential ; bacnet:value "249"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.access-event-tag a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "access-event-tag" ; bacnet:predicate bacnet:access-event-tag ; bacnet:value "322"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.access-event-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "access-event-time" ; bacnet:predicate bacnet:access-event-time ; bacnet:value "250"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.access-transaction-events a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "access-transaction-events" ; bacnet:predicate bacnet:access-transaction-events ; bacnet:value "251"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.accompaniment a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "accompaniment" ; bacnet:predicate bacnet:accompaniment ; bacnet:value "252"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.accompaniment-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "accompaniment-time" ; bacnet:predicate bacnet:accompaniment-time ; bacnet:value "253"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ack-required a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ack-required" ; bacnet:predicate bacnet:ack-required ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.acked-transitions a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "acked-transitions" ; bacnet:predicate bacnet:acked-transitions ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.action a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "action" ; bacnet:predicate bacnet:action ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.action-text a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "action-text" ; bacnet:predicate bacnet:action-text ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.activation-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "activation-time" ; bacnet:predicate bacnet:activation-time ; bacnet:value "254"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.active-authentication-policy a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "active-authentication-policy" ; bacnet:predicate bacnet:active-authentication-policy ; bacnet:value "255"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.active-cov-multiple-subscriptions a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "active-cov-multiple-subscriptions" ; bacnet:predicate bacnet:active-cov-multiple-subscriptions ; bacnet:value "481"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.active-cov-subscriptions a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "active-cov-subscriptions" ; bacnet:predicate bacnet:active-cov-subscriptions ; bacnet:value "152"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.active-text a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "active-text" ; bacnet:predicate bacnet:active-text ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.active-vt-sessions a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "active-vt-sessions" ; bacnet:predicate bacnet:active-vt-sessions ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.actual-shed-level a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "actual-shed-level" ; bacnet:predicate bacnet:actual-shed-level ; bacnet:value "212"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.adjust-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "adjust-value" ; bacnet:predicate bacnet:adjust-value ; bacnet:value "176"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.alarm-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "alarm-value" ; bacnet:predicate bacnet:alarm-value ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.alarm-values a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "alarm-values" ; bacnet:predicate bacnet:alarm-values ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.align-intervals a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "align-intervals" ; bacnet:predicate bacnet:align-intervals ; bacnet:value "193"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.all a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "all" ; bacnet:predicate bacnet:all ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.all-writes-successful a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "all-writes-successful" ; bacnet:predicate bacnet:all-writes-successful ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.allow-group-delay-inhibit a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "allow-group-delay-inhibit" ; bacnet:predicate bacnet:allow-group-delay-inhibit ; bacnet:value "365"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.apdu-length a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "apdu-length" ; bacnet:predicate bacnet:apdu-length ; bacnet:value "399"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.apdu-segment-timeout a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "apdu-segment-timeout" ; bacnet:predicate bacnet:apdu-segment-timeout ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.apdu-timeout a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "apdu-timeout" ; bacnet:predicate bacnet:apdu-timeout ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.application-software-version a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "application-software-version" ; bacnet:predicate bacnet:application-software-version ; bacnet:value "12"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.archive a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "archive" ; bacnet:predicate bacnet:archive ; bacnet:value "13"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.assigned-access-rights a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "assigned-access-rights" ; bacnet:predicate bacnet:assigned-access-rights ; bacnet:value "256"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.assigned-landing-calls a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "assigned-landing-calls" ; bacnet:predicate bacnet:assigned-landing-calls ; bacnet:value "447"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.attempted-samples a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "attempted-samples" ; bacnet:predicate bacnet:attempted-samples ; bacnet:value "124"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.authentication-factors a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "authentication-factors" ; bacnet:predicate bacnet:authentication-factors ; bacnet:value "257"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.authentication-policy-list a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "authentication-policy-list" ; bacnet:predicate bacnet:authentication-policy-list ; bacnet:value "258"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.authentication-policy-names a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "authentication-policy-names" ; bacnet:predicate bacnet:authentication-policy-names ; bacnet:value "259"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.authentication-status a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "authentication-status" ; bacnet:predicate bacnet:authentication-status ; bacnet:value "260"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.authorization-exemptions a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "authorization-exemptions" ; bacnet:predicate bacnet:authorization-exemptions ; bacnet:value "364"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.authorization-mode a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "authorization-mode" ; bacnet:predicate bacnet:authorization-mode ; bacnet:value "261"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.auto-slave-discovery a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "auto-slave-discovery" ; bacnet:predicate bacnet:auto-slave-discovery ; bacnet:value "169"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.average-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "average-value" ; bacnet:predicate bacnet:average-value ; bacnet:value "125"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.backup-and-restore-state a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "backup-and-restore-state" ; bacnet:predicate bacnet:backup-and-restore-state ; bacnet:value "338"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.backup-failure-timeout a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "backup-failure-timeout" ; bacnet:predicate bacnet:backup-failure-timeout ; bacnet:value "153"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.backup-preparation-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "backup-preparation-time" ; bacnet:predicate bacnet:backup-preparation-time ; bacnet:value "339"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.bacnet-ip-global-address a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "bacnet-ip-global-address" ; bacnet:predicate bacnet:bacnet-ip-global-address ; bacnet:value "407"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.bacnet-ip-mode a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "bacnet-ip-mode" ; bacnet:predicate bacnet:bacnet-ip-mode ; bacnet:value "408"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.bacnet-ip-multicast-address a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "bacnet-ip-multicast-address" ; bacnet:predicate bacnet:bacnet-ip-multicast-address ; bacnet:value "409"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.bacnet-ip-nat-traversal a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "bacnet-ip-nat-traversal" ; bacnet:predicate bacnet:bacnet-ip-nat-traversal ; bacnet:value "410"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.bacnet-ip-udp-port a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "bacnet-ip-udp-port" ; bacnet:predicate bacnet:bacnet-ip-udp-port ; bacnet:value "412"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.bacnet-ipv6-mode a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "bacnet-ipv6-mode" ; bacnet:predicate bacnet:bacnet-ipv6-mode ; bacnet:value "435"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.bacnet-ipv6-multicast-address a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "bacnet-ipv6-multicast-address" ; bacnet:predicate bacnet:bacnet-ipv6-multicast-address ; bacnet:value "440"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.bacnet-ipv6-udp-port a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "bacnet-ipv6-udp-port" ; bacnet:predicate bacnet:bacnet-ipv6-udp-port ; bacnet:value "438"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.base-device-security-policy a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "base-device-security-policy" ; bacnet:predicate bacnet:base-device-security-policy ; bacnet:value "327"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.bbmd-accept-fd-registration a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "bbmd-accept-fd-registration" ; bacnet:predicate bacnet:bbmd-accept-fd-registration ; bacnet:value "413"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.bbmd-broadcast-distribution-table a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "bbmd-broadcast-distribution-table" ; bacnet:predicate bacnet:bbmd-broadcast-distribution-table ; bacnet:value "414"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.bbmd-foreign-device-table a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "bbmd-foreign-device-table" ; bacnet:predicate bacnet:bbmd-foreign-device-table ; bacnet:value "415"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.belongs-to a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "belongs-to" ; bacnet:predicate bacnet:belongs-to ; bacnet:value "262"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.bias a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "bias" ; bacnet:predicate bacnet:bias ; bacnet:value "14"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.bit-mask a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "bit-mask" ; bacnet:predicate bacnet:bit-mask ; bacnet:value "342"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.bit-text a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "bit-text" ; bacnet:predicate bacnet:bit-text ; bacnet:value "343"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.blink-warn-enable a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "blink-warn-enable" ; bacnet:predicate bacnet:blink-warn-enable ; bacnet:value "373"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.buffer-size a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "buffer-size" ; bacnet:predicate bacnet:buffer-size ; bacnet:value "126"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.car-assigned-direction a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "car-assigned-direction" ; bacnet:predicate bacnet:car-assigned-direction ; bacnet:value "448"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.car-door-command a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "car-door-command" ; bacnet:predicate bacnet:car-door-command ; bacnet:value "449"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.car-door-status a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "car-door-status" ; bacnet:predicate bacnet:car-door-status ; bacnet:value "450"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.car-door-text a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "car-door-text" ; bacnet:predicate bacnet:car-door-text ; bacnet:value "451"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.car-door-zone a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "car-door-zone" ; bacnet:predicate bacnet:car-door-zone ; bacnet:value "452"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.car-drive-status a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "car-drive-status" ; bacnet:predicate bacnet:car-drive-status ; bacnet:value "453"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.car-load a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "car-load" ; bacnet:predicate bacnet:car-load ; bacnet:value "454"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.car-load-units a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "car-load-units" ; bacnet:predicate bacnet:car-load-units ; bacnet:value "455"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.car-mode a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "car-mode" ; bacnet:predicate bacnet:car-mode ; bacnet:value "456"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.car-moving-direction a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "car-moving-direction" ; bacnet:predicate bacnet:car-moving-direction ; bacnet:value "457"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.car-position a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "car-position" ; bacnet:predicate bacnet:car-position ; bacnet:value "458"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.change-of-state-count a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "change-of-state-count" ; bacnet:predicate bacnet:change-of-state-count ; bacnet:value "15"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.change-of-state-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "change-of-state-time" ; bacnet:predicate bacnet:change-of-state-time ; bacnet:value "16"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.changes-pending a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "changes-pending" ; bacnet:predicate bacnet:changes-pending ; bacnet:value "416"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.channel-number a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "channel-number" ; bacnet:predicate bacnet:channel-number ; bacnet:value "366"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.client-cov-increment a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "client-cov-increment" ; bacnet:predicate bacnet:client-cov-increment ; bacnet:value "127"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.command a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "command" ; bacnet:predicate bacnet:command ; bacnet:value "417"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.command-time-array a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "command-time-array" ; bacnet:predicate bacnet:command-time-array ; bacnet:value "430"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.configuration-files a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "configuration-files" ; bacnet:predicate bacnet:configuration-files ; bacnet:value "154"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.control-groups a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "control-groups" ; bacnet:predicate bacnet:control-groups ; bacnet:value "367"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.controlled-variable-reference a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "controlled-variable-reference" ; bacnet:predicate bacnet:controlled-variable-reference ; bacnet:value "19"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.controlled-variable-units a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "controlled-variable-units" ; bacnet:predicate bacnet:controlled-variable-units ; bacnet:value "20"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.controlled-variable-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "controlled-variable-value" ; bacnet:predicate bacnet:controlled-variable-value ; bacnet:value "21"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.count a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "count" ; bacnet:predicate bacnet:count ; bacnet:value "177"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.count-before-change a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "count-before-change" ; bacnet:predicate bacnet:count-before-change ; bacnet:value "178"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.count-change-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "count-change-time" ; bacnet:predicate bacnet:count-change-time ; bacnet:value "179"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.cov-increment a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "cov-increment" ; bacnet:predicate bacnet:cov-increment ; bacnet:value "22"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.cov-period a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "cov-period" ; bacnet:predicate bacnet:cov-period ; bacnet:value "180"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.cov-resubscription-interval a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "cov-resubscription-interval" ; bacnet:predicate bacnet:cov-resubscription-interval ; bacnet:value "128"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.covu-period a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "covu-period" ; bacnet:predicate bacnet:covu-period ; bacnet:value "349"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.covu-recipients a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "covu-recipients" ; bacnet:predicate bacnet:covu-recipients ; bacnet:value "350"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.credential-disable a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "credential-disable" ; bacnet:predicate bacnet:credential-disable ; bacnet:value "263"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.credential-status a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "credential-status" ; bacnet:predicate bacnet:credential-status ; bacnet:value "264"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.credentials a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "credentials" ; bacnet:predicate bacnet:credentials ; bacnet:value "265"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.credentials-in-zone a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "credentials-in-zone" ; bacnet:predicate bacnet:credentials-in-zone ; bacnet:value "266"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.current-command-priority a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "current-command-priority" ; bacnet:predicate bacnet:current-command-priority ; bacnet:value "431"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.database-revision a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "database-revision" ; bacnet:predicate bacnet:database-revision ; bacnet:value "155"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.date-list a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "date-list" ; bacnet:predicate bacnet:date-list ; bacnet:value "23"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.daylight-savings-status a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "daylight-savings-status" ; bacnet:predicate bacnet:daylight-savings-status ; bacnet:value "24"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.days-remaining a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "days-remaining" ; bacnet:predicate bacnet:days-remaining ; bacnet:value "267"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.deadband a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "deadband" ; bacnet:predicate bacnet:deadband ; bacnet:value "25"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.default-fade-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "default-fade-time" ; bacnet:predicate bacnet:default-fade-time ; bacnet:value "374"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.default-ramp-rate a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "default-ramp-rate" ; bacnet:predicate bacnet:default-ramp-rate ; bacnet:value "375"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.default-step-increment a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "default-step-increment" ; bacnet:predicate bacnet:default-step-increment ; bacnet:value "376"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.default-subordinate-relationship a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "default-subordinate-relationship" ; bacnet:predicate bacnet:default-subordinate-relationship ; bacnet:value "490"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.default-timeout a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "default-timeout" ; bacnet:predicate bacnet:default-timeout ; bacnet:value "393"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.deployed-profile-location a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "deployed-profile-location" ; bacnet:predicate bacnet:deployed-profile-location ; bacnet:value "484"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.derivative-constant a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "derivative-constant" ; bacnet:predicate bacnet:derivative-constant ; bacnet:value "26"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.derivative-constant-units a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "derivative-constant-units" ; bacnet:predicate bacnet:derivative-constant-units ; bacnet:value "27"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.description a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "description" ; bacnet:predicate bacnet:description ; bacnet:value "28"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.description-of-halt a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "description-of-halt" ; bacnet:predicate bacnet:description-of-halt ; bacnet:value "29"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.device-address-binding a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "device-address-binding" ; bacnet:predicate bacnet:device-address-binding ; bacnet:value "30"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.device-type a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "device-type" ; bacnet:predicate bacnet:device-type ; bacnet:value "31"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.direct-reading a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "direct-reading" ; bacnet:predicate bacnet:direct-reading ; bacnet:value "156"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.distribution-key-revision a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "distribution-key-revision" ; bacnet:predicate bacnet:distribution-key-revision ; bacnet:value "328"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.do-not-hide a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "do-not-hide" ; bacnet:predicate bacnet:do-not-hide ; bacnet:value "329"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.door-alarm-state a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "door-alarm-state" ; bacnet:predicate bacnet:door-alarm-state ; bacnet:value "226"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.door-extended-pulse-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "door-extended-pulse-time" ; bacnet:predicate bacnet:door-extended-pulse-time ; bacnet:value "227"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.door-members a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "door-members" ; bacnet:predicate bacnet:door-members ; bacnet:value "228"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.door-open-too-long-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "door-open-too-long-time" ; bacnet:predicate bacnet:door-open-too-long-time ; bacnet:value "229"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.door-pulse-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "door-pulse-time" ; bacnet:predicate bacnet:door-pulse-time ; bacnet:value "230"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.door-status a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "door-status" ; bacnet:predicate bacnet:door-status ; bacnet:value "231"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.door-unlock-delay-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "door-unlock-delay-time" ; bacnet:predicate bacnet:door-unlock-delay-time ; bacnet:value "232"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.duty-window a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "duty-window" ; bacnet:predicate bacnet:duty-window ; bacnet:value "213"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.effective-period a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "effective-period" ; bacnet:predicate bacnet:effective-period ; bacnet:value "32"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.egress-active a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "egress-active" ; bacnet:predicate bacnet:egress-active ; bacnet:value "386"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.egress-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "egress-time" ; bacnet:predicate bacnet:egress-time ; bacnet:value "377"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.elapsed-active-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "elapsed-active-time" ; bacnet:predicate bacnet:elapsed-active-time ; bacnet:value "33"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.elevator-group a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "elevator-group" ; bacnet:predicate bacnet:elevator-group ; bacnet:value "459"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.enable a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "enable" ; bacnet:predicate bacnet:enable ; bacnet:value "133"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.energy-meter a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "energy-meter" ; bacnet:predicate bacnet:energy-meter ; bacnet:value "460"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.energy-meter-ref a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "energy-meter-ref" ; bacnet:predicate bacnet:energy-meter-ref ; bacnet:value "461"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.entry-points a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "entry-points" ; bacnet:predicate bacnet:entry-points ; bacnet:value "268"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.error-limit a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "error-limit" ; bacnet:predicate bacnet:error-limit ; bacnet:value "34"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.escalator-mode a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "escalator-mode" ; bacnet:predicate bacnet:escalator-mode ; bacnet:value "462"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.event-algorithm-inhibit a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "event-algorithm-inhibit" ; bacnet:predicate bacnet:event-algorithm-inhibit ; bacnet:value "354"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.event-algorithm-inhibit-ref a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "event-algorithm-inhibit-ref" ; bacnet:predicate bacnet:event-algorithm-inhibit-ref ; bacnet:value "355"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.event-detection-enable a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "event-detection-enable" ; bacnet:predicate bacnet:event-detection-enable ; bacnet:value "353"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.event-enable a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "event-enable" ; bacnet:predicate bacnet:event-enable ; bacnet:value "35"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.event-message-texts a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "event-message-texts" ; bacnet:predicate bacnet:event-message-texts ; bacnet:value "351"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.event-message-texts-config a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "event-message-texts-config" ; bacnet:predicate bacnet:event-message-texts-config ; bacnet:value "352"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.event-parameters a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "event-parameters" ; bacnet:predicate bacnet:event-parameters ; bacnet:value "83"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.event-state a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "event-state" ; bacnet:predicate bacnet:event-state ; bacnet:value "36"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.event-time-stamps a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "event-time-stamps" ; bacnet:predicate bacnet:event-time-stamps ; bacnet:value "130"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.event-type a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "event-type" ; bacnet:predicate bacnet:event-type ; bacnet:value "37"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.exception-schedule a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "exception-schedule" ; bacnet:predicate bacnet:exception-schedule ; bacnet:value "38"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.execution-delay a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "execution-delay" ; bacnet:predicate bacnet:execution-delay ; bacnet:value "368"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.exit-points a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "exit-points" ; bacnet:predicate bacnet:exit-points ; bacnet:value "269"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.expected-shed-level a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "expected-shed-level" ; bacnet:predicate bacnet:expected-shed-level ; bacnet:value "214"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.expiration-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "expiration-time" ; bacnet:predicate bacnet:expiration-time ; bacnet:value "270"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.extended-time-enable a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "extended-time-enable" ; bacnet:predicate bacnet:extended-time-enable ; bacnet:value "271"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.failed-attempt-events a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "failed-attempt-events" ; bacnet:predicate bacnet:failed-attempt-events ; bacnet:value "272"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.failed-attempts a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "failed-attempts" ; bacnet:predicate bacnet:failed-attempts ; bacnet:value "273"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.failed-attempts-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "failed-attempts-time" ; bacnet:predicate bacnet:failed-attempts-time ; bacnet:value "274"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.fault-high-limit a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "fault-high-limit" ; bacnet:predicate bacnet:fault-high-limit ; bacnet:value "388"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.fault-low-limit a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "fault-low-limit" ; bacnet:predicate bacnet:fault-low-limit ; bacnet:value "389"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.fault-parameters a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "fault-parameters" ; bacnet:predicate bacnet:fault-parameters ; bacnet:value "358"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.fault-signals a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "fault-signals" ; bacnet:predicate bacnet:fault-signals ; bacnet:value "463"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.fault-type a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "fault-type" ; bacnet:predicate bacnet:fault-type ; bacnet:value "359"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.fault-values a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "fault-values" ; bacnet:predicate bacnet:fault-values ; bacnet:value "39"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.fd-bbmd-address a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "fd-bbmd-address" ; bacnet:predicate bacnet:fd-bbmd-address ; bacnet:value "418"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.fd-subscription-lifetime a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "fd-subscription-lifetime" ; bacnet:predicate bacnet:fd-subscription-lifetime ; bacnet:value "419"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.feedback-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "feedback-value" ; bacnet:predicate bacnet:feedback-value ; bacnet:value "40"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.file-access-method a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "file-access-method" ; bacnet:predicate bacnet:file-access-method ; bacnet:value "41"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.file-size a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "file-size" ; bacnet:predicate bacnet:file-size ; bacnet:value "42"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.file-type a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "file-type" ; bacnet:predicate bacnet:file-type ; bacnet:value "43"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.firmware-revision a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "firmware-revision" ; bacnet:predicate bacnet:firmware-revision ; bacnet:value "44"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.floor-text a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "floor-text" ; bacnet:predicate bacnet:floor-text ; bacnet:value "464"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.full-duty-baseline a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "full-duty-baseline" ; bacnet:predicate bacnet:full-duty-baseline ; bacnet:value "215"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.global-id a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "global-id" ; bacnet:predicate bacnet:global-id ; bacnet:value "465"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.global-identifier a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "global-identifier" ; bacnet:predicate bacnet:global-identifier ; bacnet:value "323"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.group-member-names a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "group-member-names" ; bacnet:predicate bacnet:group-member-names ; bacnet:value "346"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.group-members a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "group-members" ; bacnet:predicate bacnet:group-members ; bacnet:value "345"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.group-mode a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "group-mode" ; bacnet:predicate bacnet:group-mode ; bacnet:value "467"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.high-limit a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "high-limit" ; bacnet:predicate bacnet:high-limit ; bacnet:value "45"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.higher-deck a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "higher-deck" ; bacnet:predicate bacnet:higher-deck ; bacnet:value "468"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.in-process a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "in-process" ; bacnet:predicate bacnet:in-process ; bacnet:value "47"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.in-progress a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "in-progress" ; bacnet:predicate bacnet:in-progress ; bacnet:value "378"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.inactive-text a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "inactive-text" ; bacnet:predicate bacnet:inactive-text ; bacnet:value "46"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.initial-timeout a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "initial-timeout" ; bacnet:predicate bacnet:initial-timeout ; bacnet:value "394"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.input-reference a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "input-reference" ; bacnet:predicate bacnet:input-reference ; bacnet:value "181"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.installation-id a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "installation-id" ; bacnet:predicate bacnet:installation-id ; bacnet:value "469"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.instance-of a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "instance-of" ; bacnet:predicate bacnet:instance-of ; bacnet:value "48"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.instantaneous-power a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "instantaneous-power" ; bacnet:predicate bacnet:instantaneous-power ; bacnet:value "379"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.integral-constant a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "integral-constant" ; bacnet:predicate bacnet:integral-constant ; bacnet:value "49"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.integral-constant-units a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "integral-constant-units" ; bacnet:predicate bacnet:integral-constant-units ; bacnet:value "50"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.interface-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "interface-value" ; bacnet:predicate bacnet:interface-value ; bacnet:value "387"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.interval-offset a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "interval-offset" ; bacnet:predicate bacnet:interval-offset ; bacnet:value "195"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ip-address a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ip-address" ; bacnet:predicate bacnet:ip-address ; bacnet:value "400"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ip-default-gateway a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ip-default-gateway" ; bacnet:predicate bacnet:ip-default-gateway ; bacnet:value "401"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ip-dhcp-enable a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ip-dhcp-enable" ; bacnet:predicate bacnet:ip-dhcp-enable ; bacnet:value "402"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ip-dhcp-lease-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ip-dhcp-lease-time" ; bacnet:predicate bacnet:ip-dhcp-lease-time ; bacnet:value "403"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ip-dhcp-lease-time-remaining a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ip-dhcp-lease-time-remaining" ; bacnet:predicate bacnet:ip-dhcp-lease-time-remaining ; bacnet:value "404"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ip-dhcp-server a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ip-dhcp-server" ; bacnet:predicate bacnet:ip-dhcp-server ; bacnet:value "405"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ip-dns-server a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ip-dns-server" ; bacnet:predicate bacnet:ip-dns-server ; bacnet:value "406"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ip-subnet-mask a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ip-subnet-mask" ; bacnet:predicate bacnet:ip-subnet-mask ; bacnet:value "411"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ipv6-address a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ipv6-address" ; bacnet:predicate bacnet:ipv6-address ; bacnet:value "436"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ipv6-auto-addressing-enable a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ipv6-auto-addressing-enable" ; bacnet:predicate bacnet:ipv6-auto-addressing-enable ; bacnet:value "442"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ipv6-default-gateway a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ipv6-default-gateway" ; bacnet:predicate bacnet:ipv6-default-gateway ; bacnet:value "439"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ipv6-dhcp-lease-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ipv6-dhcp-lease-time" ; bacnet:predicate bacnet:ipv6-dhcp-lease-time ; bacnet:value "443"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ipv6-dhcp-lease-time-remaining a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ipv6-dhcp-lease-time-remaining" ; bacnet:predicate bacnet:ipv6-dhcp-lease-time-remaining ; bacnet:value "444"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ipv6-dhcp-server a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ipv6-dhcp-server" ; bacnet:predicate bacnet:ipv6-dhcp-server ; bacnet:value "445"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ipv6-dns-server a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ipv6-dns-server" ; bacnet:predicate bacnet:ipv6-dns-server ; bacnet:value "441"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ipv6-prefix-length a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ipv6-prefix-length" ; bacnet:predicate bacnet:ipv6-prefix-length ; bacnet:value "437"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.ipv6-zone-index a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "ipv6-zone-index" ; bacnet:predicate bacnet:ipv6-zone-index ; bacnet:value "446"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.is-utc a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "is-utc" ; bacnet:predicate bacnet:is-utc ; bacnet:value "344"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.key-sets a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "key-sets" ; bacnet:predicate bacnet:key-sets ; bacnet:value "330"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.landing-call-control a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "landing-call-control" ; bacnet:predicate bacnet:landing-call-control ; bacnet:value "471"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.landing-calls a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "landing-calls" ; bacnet:predicate bacnet:landing-calls ; bacnet:value "470"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.landing-door-status a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "landing-door-status" ; bacnet:predicate bacnet:landing-door-status ; bacnet:value "472"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.last-access-event a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "last-access-event" ; bacnet:predicate bacnet:last-access-event ; bacnet:value "275"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.last-access-point a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "last-access-point" ; bacnet:predicate bacnet:last-access-point ; bacnet:value "276"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.last-command-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "last-command-time" ; bacnet:predicate bacnet:last-command-time ; bacnet:value "432"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.last-credential-added a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "last-credential-added" ; bacnet:predicate bacnet:last-credential-added ; bacnet:value "277"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.last-credential-added-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "last-credential-added-time" ; bacnet:predicate bacnet:last-credential-added-time ; bacnet:value "278"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.last-credential-removed a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "last-credential-removed" ; bacnet:predicate bacnet:last-credential-removed ; bacnet:value "279"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.last-credential-removed-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "last-credential-removed-time" ; bacnet:predicate bacnet:last-credential-removed-time ; bacnet:value "280"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.last-key-server a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "last-key-server" ; bacnet:predicate bacnet:last-key-server ; bacnet:value "331"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.last-notify-record a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "last-notify-record" ; bacnet:predicate bacnet:last-notify-record ; bacnet:value "173"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.last-priority a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "last-priority" ; bacnet:predicate bacnet:last-priority ; bacnet:value "369"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.last-restart-reason a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "last-restart-reason" ; bacnet:predicate bacnet:last-restart-reason ; bacnet:value "196"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.last-restore-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "last-restore-time" ; bacnet:predicate bacnet:last-restore-time ; bacnet:value "157"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.last-state-change a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "last-state-change" ; bacnet:predicate bacnet:last-state-change ; bacnet:value "395"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.last-use-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "last-use-time" ; bacnet:predicate bacnet:last-use-time ; bacnet:value "281"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.life-safety-alarm-values a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "life-safety-alarm-values" ; bacnet:predicate bacnet:life-safety-alarm-values ; bacnet:value "166"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.lighting-command a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "lighting-command" ; bacnet:predicate bacnet:lighting-command ; bacnet:value "380"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.lighting-command-default-priority a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "lighting-command-default-priority" ; bacnet:predicate bacnet:lighting-command-default-priority ; bacnet:value "381"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.limit-enable a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "limit-enable" ; bacnet:predicate bacnet:limit-enable ; bacnet:value "52"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.limit-monitoring-interval a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "limit-monitoring-interval" ; bacnet:predicate bacnet:limit-monitoring-interval ; bacnet:value "182"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.link-speed a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "link-speed" ; bacnet:predicate bacnet:link-speed ; bacnet:value "420"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.link-speed-autonegotiate a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "link-speed-autonegotiate" ; bacnet:predicate bacnet:link-speed-autonegotiate ; bacnet:value "422"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.link-speeds a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "link-speeds" ; bacnet:predicate bacnet:link-speeds ; bacnet:value "421"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.list-of-group-members a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "list-of-group-members" ; bacnet:predicate bacnet:list-of-group-members ; bacnet:value "53"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.list-of-object-property-references a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "list-of-object-property-references" ; bacnet:predicate bacnet:list-of-object-property-references ; bacnet:value "54"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.local-date a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "local-date" ; bacnet:predicate bacnet:local-date ; bacnet:value "56"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.local-forwarding-only a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "local-forwarding-only" ; bacnet:predicate bacnet:local-forwarding-only ; bacnet:value "360"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.local-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "local-time" ; bacnet:predicate bacnet:local-time ; bacnet:value "57"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.location a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "location" ; bacnet:predicate bacnet:location ; bacnet:value "58"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.lock-status a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "lock-status" ; bacnet:predicate bacnet:lock-status ; bacnet:value "233"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.lockout a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "lockout" ; bacnet:predicate bacnet:lockout ; bacnet:value "282"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.lockout-relinquish-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "lockout-relinquish-time" ; bacnet:predicate bacnet:lockout-relinquish-time ; bacnet:value "283"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.log-buffer a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "log-buffer" ; bacnet:predicate bacnet:log-buffer ; bacnet:value "131"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.log-device-object-property a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "log-device-object-property" ; bacnet:predicate bacnet:log-device-object-property ; bacnet:value "132"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.log-interval a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "log-interval" ; bacnet:predicate bacnet:log-interval ; bacnet:value "134"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.logging-object a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "logging-object" ; bacnet:predicate bacnet:logging-object ; bacnet:value "183"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.logging-record a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "logging-record" ; bacnet:predicate bacnet:logging-record ; bacnet:value "184"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.logging-type a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "logging-type" ; bacnet:predicate bacnet:logging-type ; bacnet:value "197"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.low-diff-limit a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "low-diff-limit" ; bacnet:predicate bacnet:low-diff-limit ; bacnet:value "390"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.low-limit a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "low-limit" ; bacnet:predicate bacnet:low-limit ; bacnet:value "59"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.lower-deck a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "lower-deck" ; bacnet:predicate bacnet:lower-deck ; bacnet:value "473"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.mac-address a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "mac-address" ; bacnet:predicate bacnet:mac-address ; bacnet:value "423"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.machine-room-id a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "machine-room-id" ; bacnet:predicate bacnet:machine-room-id ; bacnet:value "474"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.maintenance-required a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "maintenance-required" ; bacnet:predicate bacnet:maintenance-required ; bacnet:value "158"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.making-car-call a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "making-car-call" ; bacnet:predicate bacnet:making-car-call ; bacnet:value "475"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.manipulated-variable-reference a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "manipulated-variable-reference" ; bacnet:predicate bacnet:manipulated-variable-reference ; bacnet:value "60"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.manual-slave-address-binding a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "manual-slave-address-binding" ; bacnet:predicate bacnet:manual-slave-address-binding ; bacnet:value "170"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.masked-alarm-values a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "masked-alarm-values" ; bacnet:predicate bacnet:masked-alarm-values ; bacnet:value "234"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.max-actual-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "max-actual-value" ; bacnet:predicate bacnet:max-actual-value ; bacnet:value "382"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.max-apdu-length-accepted a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "max-apdu-length-accepted" ; bacnet:predicate bacnet:max-apdu-length-accepted ; bacnet:value "62"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.max-failed-attempts a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "max-failed-attempts" ; bacnet:predicate bacnet:max-failed-attempts ; bacnet:value "285"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.max-info-frames a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "max-info-frames" ; bacnet:predicate bacnet:max-info-frames ; bacnet:value "63"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.max-master a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "max-master" ; bacnet:predicate bacnet:max-master ; bacnet:value "64"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.max-pres-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "max-pres-value" ; bacnet:predicate bacnet:max-pres-value ; bacnet:value "65"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.max-segments-accepted a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "max-segments-accepted" ; bacnet:predicate bacnet:max-segments-accepted ; bacnet:value "167"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.maximum-output a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "maximum-output" ; bacnet:predicate bacnet:maximum-output ; bacnet:value "61"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.maximum-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "maximum-value" ; bacnet:predicate bacnet:maximum-value ; bacnet:value "135"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.maximum-value-timestamp a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "maximum-value-timestamp" ; bacnet:predicate bacnet:maximum-value-timestamp ; bacnet:value "149"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.member-of a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "member-of" ; bacnet:predicate bacnet:member-of ; bacnet:value "159"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.member-status-flags a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "member-status-flags" ; bacnet:predicate bacnet:member-status-flags ; bacnet:value "347"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.members a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "members" ; bacnet:predicate bacnet:members ; bacnet:value "286"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.min-actual-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "min-actual-value" ; bacnet:predicate bacnet:min-actual-value ; bacnet:value "383"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.min-pres-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "min-pres-value" ; bacnet:predicate bacnet:min-pres-value ; bacnet:value "69"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.minimum-off-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "minimum-off-time" ; bacnet:predicate bacnet:minimum-off-time ; bacnet:value "66"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.minimum-on-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "minimum-on-time" ; bacnet:predicate bacnet:minimum-on-time ; bacnet:value "67"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.minimum-output a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "minimum-output" ; bacnet:predicate bacnet:minimum-output ; bacnet:value "68"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.minimum-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "minimum-value" ; bacnet:predicate bacnet:minimum-value ; bacnet:value "136"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.minimum-value-timestamp a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "minimum-value-timestamp" ; bacnet:predicate bacnet:minimum-value-timestamp ; bacnet:value "150"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.mode a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "mode" ; bacnet:predicate bacnet:mode ; bacnet:value "160"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.model-name a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "model-name" ; bacnet:predicate bacnet:model-name ; bacnet:value "70"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.modification-date a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "modification-date" ; bacnet:predicate bacnet:modification-date ; bacnet:value "71"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.muster-point a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "muster-point" ; bacnet:predicate bacnet:muster-point ; bacnet:value "287"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.negative-access-rules a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "negative-access-rules" ; bacnet:predicate bacnet:negative-access-rules ; bacnet:value "288"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.network-access-security-policies a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "network-access-security-policies" ; bacnet:predicate bacnet:network-access-security-policies ; bacnet:value "332"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.network-interface-name a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "network-interface-name" ; bacnet:predicate bacnet:network-interface-name ; bacnet:value "424"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.network-number a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "network-number" ; bacnet:predicate bacnet:network-number ; bacnet:value "425"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.network-number-quality a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "network-number-quality" ; bacnet:predicate bacnet:network-number-quality ; bacnet:value "426"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.network-type a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "network-type" ; bacnet:predicate bacnet:network-type ; bacnet:value "427"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.next-stopping-floor a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "next-stopping-floor" ; bacnet:predicate bacnet:next-stopping-floor ; bacnet:value "476"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.node-subtype a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "node-subtype" ; bacnet:predicate bacnet:node-subtype ; bacnet:value "207"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.node-type a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "node-type" ; bacnet:predicate bacnet:node-type ; bacnet:value "208"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.notification-class a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "notification-class" ; bacnet:predicate bacnet:notification-class ; bacnet:value "17"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.notification-threshold a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "notification-threshold" ; bacnet:predicate bacnet:notification-threshold ; bacnet:value "137"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.notify-type a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "notify-type" ; bacnet:predicate bacnet:notify-type ; bacnet:value "72"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.number-of-apdu-retries a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "number-of-apdu-retries" ; bacnet:predicate bacnet:number-of-apdu-retries ; bacnet:value "73"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.number-of-authentication-policies a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "number-of-authentication-policies" ; bacnet:predicate bacnet:number-of-authentication-policies ; bacnet:value "289"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.number-of-states a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "number-of-states" ; bacnet:predicate bacnet:number-of-states ; bacnet:value "74"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.object-identifier a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "object-identifier" ; bacnet:predicate bacnet:object-identifier ; bacnet:value "75"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.object-list a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "object-list" ; bacnet:predicate bacnet:object-list ; bacnet:value "76"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.object-name a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "object-name" ; bacnet:predicate bacnet:object-name ; bacnet:value "77"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.object-property-reference a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "object-property-reference" ; bacnet:predicate bacnet:object-property-reference ; bacnet:value "78"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.object-type a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "object-type" ; bacnet:predicate bacnet:object-type ; bacnet:value "79"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.occupancy-count a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "occupancy-count" ; bacnet:predicate bacnet:occupancy-count ; bacnet:value "290"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.occupancy-count-adjust a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "occupancy-count-adjust" ; bacnet:predicate bacnet:occupancy-count-adjust ; bacnet:value "291"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.occupancy-count-enable a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "occupancy-count-enable" ; bacnet:predicate bacnet:occupancy-count-enable ; bacnet:value "292"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.occupancy-lower-limit a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "occupancy-lower-limit" ; bacnet:predicate bacnet:occupancy-lower-limit ; bacnet:value "294"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.occupancy-lower-limit-enforced a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "occupancy-lower-limit-enforced" ; bacnet:predicate bacnet:occupancy-lower-limit-enforced ; bacnet:value "295"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.occupancy-state a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "occupancy-state" ; bacnet:predicate bacnet:occupancy-state ; bacnet:value "296"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.occupancy-upper-limit a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "occupancy-upper-limit" ; bacnet:predicate bacnet:occupancy-upper-limit ; bacnet:value "297"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.occupancy-upper-limit-enforced a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "occupancy-upper-limit-enforced" ; bacnet:predicate bacnet:occupancy-upper-limit-enforced ; bacnet:value "298"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.operation-direction a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "operation-direction" ; bacnet:predicate bacnet:operation-direction ; bacnet:value "477"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.operation-expected a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "operation-expected" ; bacnet:predicate bacnet:operation-expected ; bacnet:value "161"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.optional a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "optional" ; bacnet:predicate bacnet:optional ; bacnet:value "80"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.out-of-service a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "out-of-service" ; bacnet:predicate bacnet:out-of-service ; bacnet:value "81"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.output-units a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "output-units" ; bacnet:predicate bacnet:output-units ; bacnet:value "82"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.packet-reorder-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "packet-reorder-time" ; bacnet:predicate bacnet:packet-reorder-time ; bacnet:value "333"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.passback-mode a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "passback-mode" ; bacnet:predicate bacnet:passback-mode ; bacnet:value "300"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.passback-timeout a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "passback-timeout" ; bacnet:predicate bacnet:passback-timeout ; bacnet:value "301"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.passenger-alarm a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "passenger-alarm" ; bacnet:predicate bacnet:passenger-alarm ; bacnet:value "478"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.polarity a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "polarity" ; bacnet:predicate bacnet:polarity ; bacnet:value "84"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.port-filter a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "port-filter" ; bacnet:predicate bacnet:port-filter ; bacnet:value "363"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.positive-access-rules a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "positive-access-rules" ; bacnet:predicate bacnet:positive-access-rules ; bacnet:value "302"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.power a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "power" ; bacnet:predicate bacnet:power ; bacnet:value "384"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.power-mode a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "power-mode" ; bacnet:predicate bacnet:power-mode ; bacnet:value "479"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.prescale a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "prescale" ; bacnet:predicate bacnet:prescale ; bacnet:value "185"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.present-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "present-value" ; bacnet:predicate bacnet:present-value ; bacnet:value "85"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.priority a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "priority" ; bacnet:predicate bacnet:priority ; bacnet:value "86"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.priority-array a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "priority-array" ; bacnet:predicate bacnet:priority-array ; bacnet:value "87"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.priority-for-writing a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "priority-for-writing" ; bacnet:predicate bacnet:priority-for-writing ; bacnet:value "88"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.process-identifier a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "process-identifier" ; bacnet:predicate bacnet:process-identifier ; bacnet:value "89"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.process-identifier-filter a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "process-identifier-filter" ; bacnet:predicate bacnet:process-identifier-filter ; bacnet:value "361"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.profile-location a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "profile-location" ; bacnet:predicate bacnet:profile-location ; bacnet:value "485"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.profile-name a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "profile-name" ; bacnet:predicate bacnet:profile-name ; bacnet:value "168"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.program-change a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "program-change" ; bacnet:predicate bacnet:program-change ; bacnet:value "90"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.program-location a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "program-location" ; bacnet:predicate bacnet:program-location ; bacnet:value "91"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.program-state a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "program-state" ; bacnet:predicate bacnet:program-state ; bacnet:value "92"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.property-list a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "property-list" ; bacnet:predicate bacnet:property-list ; bacnet:value "371"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.proportional-constant a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "proportional-constant" ; bacnet:predicate bacnet:proportional-constant ; bacnet:value "93"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.proportional-constant-units a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "proportional-constant-units" ; bacnet:predicate bacnet:proportional-constant-units ; bacnet:value "94"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.protocol-level a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "protocol-level" ; bacnet:predicate bacnet:protocol-level ; bacnet:value "482"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.protocol-object-types-supported a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "protocol-object-types-supported" ; bacnet:predicate bacnet:protocol-object-types-supported ; bacnet:value "96"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.protocol-revision a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "protocol-revision" ; bacnet:predicate bacnet:protocol-revision ; bacnet:value "139"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.protocol-services-supported a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "protocol-services-supported" ; bacnet:predicate bacnet:protocol-services-supported ; bacnet:value "97"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.protocol-version a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "protocol-version" ; bacnet:predicate bacnet:protocol-version ; bacnet:value "98"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.pulse-rate a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "pulse-rate" ; bacnet:predicate bacnet:pulse-rate ; bacnet:value "186"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.read-only a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "read-only" ; bacnet:predicate bacnet:read-only ; bacnet:value "99"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.reason-for-disable a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "reason-for-disable" ; bacnet:predicate bacnet:reason-for-disable ; bacnet:value "303"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.reason-for-halt a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "reason-for-halt" ; bacnet:predicate bacnet:reason-for-halt ; bacnet:value "100"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.recipient-list a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "recipient-list" ; bacnet:predicate bacnet:recipient-list ; bacnet:value "102"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.record-count a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "record-count" ; bacnet:predicate bacnet:record-count ; bacnet:value "141"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.records-since-notification a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "records-since-notification" ; bacnet:predicate bacnet:records-since-notification ; bacnet:value "140"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.reference-port a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "reference-port" ; bacnet:predicate bacnet:reference-port ; bacnet:value "483"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.registered-car-call a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "registered-car-call" ; bacnet:predicate bacnet:registered-car-call ; bacnet:value "480"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.reliability a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "reliability" ; bacnet:predicate bacnet:reliability ; bacnet:value "103"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.reliability-evaluation-inhibit a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "reliability-evaluation-inhibit" ; bacnet:predicate bacnet:reliability-evaluation-inhibit ; bacnet:value "357"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.relinquish-default a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "relinquish-default" ; bacnet:predicate bacnet:relinquish-default ; bacnet:value "104"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.represents a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "represents" ; bacnet:predicate bacnet:represents ; bacnet:value "491"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.requested-shed-level a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "requested-shed-level" ; bacnet:predicate bacnet:requested-shed-level ; bacnet:value "218"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.requested-update-interval a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "requested-update-interval" ; bacnet:predicate bacnet:requested-update-interval ; bacnet:value "348"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.required a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "required" ; bacnet:predicate bacnet:required ; bacnet:value "105"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.resolution a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "resolution" ; bacnet:predicate bacnet:resolution ; bacnet:value "106"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.restart-notification-recipients a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "restart-notification-recipients" ; bacnet:predicate bacnet:restart-notification-recipients ; bacnet:value "202"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.restore-completion-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "restore-completion-time" ; bacnet:predicate bacnet:restore-completion-time ; bacnet:value "340"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.restore-preparation-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "restore-preparation-time" ; bacnet:predicate bacnet:restore-preparation-time ; bacnet:value "341"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.routing-table a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "routing-table" ; bacnet:predicate bacnet:routing-table ; bacnet:value "428"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.scale a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "scale" ; bacnet:predicate bacnet:scale ; bacnet:value "187"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.scale-factor a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "scale-factor" ; bacnet:predicate bacnet:scale-factor ; bacnet:value "188"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.schedule-default a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "schedule-default" ; bacnet:predicate bacnet:schedule-default ; bacnet:value "174"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.secured-status a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "secured-status" ; bacnet:predicate bacnet:secured-status ; bacnet:value "235"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.security-pdu-timeout a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "security-pdu-timeout" ; bacnet:predicate bacnet:security-pdu-timeout ; bacnet:value "334"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.security-time-window a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "security-time-window" ; bacnet:predicate bacnet:security-time-window ; bacnet:value "335"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.segmentation-supported a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "segmentation-supported" ; bacnet:predicate bacnet:segmentation-supported ; bacnet:value "107"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.serial-number a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "serial-number" ; bacnet:predicate bacnet:serial-number ; bacnet:value "372"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.setpoint a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "setpoint" ; bacnet:predicate bacnet:setpoint ; bacnet:value "108"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.setpoint-reference a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "setpoint-reference" ; bacnet:predicate bacnet:setpoint-reference ; bacnet:value "109"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.setting a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "setting" ; bacnet:predicate bacnet:setting ; bacnet:value "162"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.shed-duration a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "shed-duration" ; bacnet:predicate bacnet:shed-duration ; bacnet:value "219"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.shed-level-descriptions a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "shed-level-descriptions" ; bacnet:predicate bacnet:shed-level-descriptions ; bacnet:value "220"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.shed-levels a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "shed-levels" ; bacnet:predicate bacnet:shed-levels ; bacnet:value "221"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.silenced a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "silenced" ; bacnet:predicate bacnet:silenced ; bacnet:value "163"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.slave-address-binding a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "slave-address-binding" ; bacnet:predicate bacnet:slave-address-binding ; bacnet:value "171"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.slave-proxy-enable a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "slave-proxy-enable" ; bacnet:predicate bacnet:slave-proxy-enable ; bacnet:value "172"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.start-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "start-time" ; bacnet:predicate bacnet:start-time ; bacnet:value "142"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.state-change-values a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "state-change-values" ; bacnet:predicate bacnet:state-change-values ; bacnet:value "396"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.state-description a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "state-description" ; bacnet:predicate bacnet:state-description ; bacnet:value "222"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.state-text a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "state-text" ; bacnet:predicate bacnet:state-text ; bacnet:value "110"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.status-flags a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "status-flags" ; bacnet:predicate bacnet:status-flags ; bacnet:value "111"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.stop-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "stop-time" ; bacnet:predicate bacnet:stop-time ; bacnet:value "143"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.stop-when-full a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "stop-when-full" ; bacnet:predicate bacnet:stop-when-full ; bacnet:value "144"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.strike-count a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "strike-count" ; bacnet:predicate bacnet:strike-count ; bacnet:value "391"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.structured-object-list a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "structured-object-list" ; bacnet:predicate bacnet:structured-object-list ; bacnet:value "209"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.subordinate-annotations a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "subordinate-annotations" ; bacnet:predicate bacnet:subordinate-annotations ; bacnet:value "210"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.subordinate-list a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "subordinate-list" ; bacnet:predicate bacnet:subordinate-list ; bacnet:value "211"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.subordinate-node-types a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "subordinate-node-types" ; bacnet:predicate bacnet:subordinate-node-types ; bacnet:value "487"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.subordinate-relationships a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "subordinate-relationships" ; bacnet:predicate bacnet:subordinate-relationships ; bacnet:value "489"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.subordinate-tags a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "subordinate-tags" ; bacnet:predicate bacnet:subordinate-tags ; bacnet:value "488"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.subscribed-recipients a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "subscribed-recipients" ; bacnet:predicate bacnet:subscribed-recipients ; bacnet:value "362"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.supported-format-classes a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "supported-format-classes" ; bacnet:predicate bacnet:supported-format-classes ; bacnet:value "305"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.supported-formats a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "supported-formats" ; bacnet:predicate bacnet:supported-formats ; bacnet:value "304"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.supported-security-algorithms a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "supported-security-algorithms" ; bacnet:predicate bacnet:supported-security-algorithms ; bacnet:value "336"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.system-status a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "system-status" ; bacnet:predicate bacnet:system-status ; bacnet:value "112"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.tags a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "tags" ; bacnet:predicate bacnet:tags ; bacnet:value "486"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.threat-authority a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "threat-authority" ; bacnet:predicate bacnet:threat-authority ; bacnet:value "306"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.threat-level a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "threat-level" ; bacnet:predicate bacnet:threat-level ; bacnet:value "307"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.time-delay a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "time-delay" ; bacnet:predicate bacnet:time-delay ; bacnet:value "113"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.time-delay-normal a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "time-delay-normal" ; bacnet:predicate bacnet:time-delay-normal ; bacnet:value "356"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.time-of-active-time-reset a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "time-of-active-time-reset" ; bacnet:predicate bacnet:time-of-active-time-reset ; bacnet:value "114"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.time-of-device-restart a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "time-of-device-restart" ; bacnet:predicate bacnet:time-of-device-restart ; bacnet:value "203"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.time-of-state-count-reset a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "time-of-state-count-reset" ; bacnet:predicate bacnet:time-of-state-count-reset ; bacnet:value "115"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.time-of-strike-count-reset a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "time-of-strike-count-reset" ; bacnet:predicate bacnet:time-of-strike-count-reset ; bacnet:value "392"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.time-synchronization-interval a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "time-synchronization-interval" ; bacnet:predicate bacnet:time-synchronization-interval ; bacnet:value "204"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.time-synchronization-recipients a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "time-synchronization-recipients" ; bacnet:predicate bacnet:time-synchronization-recipients ; bacnet:value "116"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.timer-running a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "timer-running" ; bacnet:predicate bacnet:timer-running ; bacnet:value "397"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.timer-state a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "timer-state" ; bacnet:predicate bacnet:timer-state ; bacnet:value "398"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.total-record-count a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "total-record-count" ; bacnet:predicate bacnet:total-record-count ; bacnet:value "145"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.trace-flag a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "trace-flag" ; bacnet:predicate bacnet:trace-flag ; bacnet:value "308"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.tracking-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "tracking-value" ; bacnet:predicate bacnet:tracking-value ; bacnet:value "164"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.transaction-notification-class a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "transaction-notification-class" ; bacnet:predicate bacnet:transaction-notification-class ; bacnet:value "309"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.transition a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "transition" ; bacnet:predicate bacnet:transition ; bacnet:value "385"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.trigger a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "trigger" ; bacnet:predicate bacnet:trigger ; bacnet:value "205"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.units a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "units" ; bacnet:predicate bacnet:units ; bacnet:value "117"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.update-interval a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "update-interval" ; bacnet:predicate bacnet:update-interval ; bacnet:value "118"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.update-key-set-timeout a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "update-key-set-timeout" ; bacnet:predicate bacnet:update-key-set-timeout ; bacnet:value "337"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.update-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "update-time" ; bacnet:predicate bacnet:update-time ; bacnet:value "189"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.user-external-identifier a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "user-external-identifier" ; bacnet:predicate bacnet:user-external-identifier ; bacnet:value "310"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.user-information-reference a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "user-information-reference" ; bacnet:predicate bacnet:user-information-reference ; bacnet:value "311"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.user-name a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "user-name" ; bacnet:predicate bacnet:user-name ; bacnet:value "317"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.user-type a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "user-type" ; bacnet:predicate bacnet:user-type ; bacnet:value "318"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.uses-remaining a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "uses-remaining" ; bacnet:predicate bacnet:uses-remaining ; bacnet:value "319"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.utc-offset a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "utc-offset" ; bacnet:predicate bacnet:utc-offset ; bacnet:value "119"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.utc-time-synchronization-recipients a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "utc-time-synchronization-recipients" ; bacnet:predicate bacnet:utc-time-synchronization-recipients ; bacnet:value "206"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.valid-samples a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "valid-samples" ; bacnet:predicate bacnet:valid-samples ; bacnet:value "146"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.value-before-change a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "value-before-change" ; bacnet:predicate bacnet:value-before-change ; bacnet:value "190"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.value-change-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "value-change-time" ; bacnet:predicate bacnet:value-change-time ; bacnet:value "192"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.value-set a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "value-set" ; bacnet:predicate bacnet:value-set ; bacnet:value "191"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.value-source a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "value-source" ; bacnet:predicate bacnet:value-source ; bacnet:value "433"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.value-source-array a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "value-source-array" ; bacnet:predicate bacnet:value-source-array ; bacnet:value "434"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.variance-value a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "variance-value" ; bacnet:predicate bacnet:variance-value ; bacnet:value "151"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.vendor-identifier a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "vendor-identifier" ; bacnet:predicate bacnet:vendor-identifier ; bacnet:value "120"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.vendor-name a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "vendor-name" ; bacnet:predicate bacnet:vendor-name ; bacnet:value "121"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.verification-time a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "verification-time" ; bacnet:predicate bacnet:verification-time ; bacnet:value "326"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.virtual-mac-address-table a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "virtual-mac-address-table" ; bacnet:predicate bacnet:virtual-mac-address-table ; bacnet:value "429"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.vt-classes-supported a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "vt-classes-supported" ; bacnet:predicate bacnet:vt-classes-supported ; bacnet:value "122"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.weekly-schedule a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "weekly-schedule" ; bacnet:predicate bacnet:weekly-schedule ; bacnet:value "123"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.window-interval a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "window-interval" ; bacnet:predicate bacnet:window-interval ; bacnet:value "147"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.window-samples a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "window-samples" ; bacnet:predicate bacnet:window-samples ; bacnet:value "148"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.write-status a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "write-status" ; bacnet:predicate bacnet:write-status ; bacnet:value "370"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.zone-from a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "zone-from" ; bacnet:predicate bacnet:zone-from ; bacnet:value "320"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.zone-members a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "zone-members" ; bacnet:predicate bacnet:zone-members ; bacnet:value "165"^^xsd:nonNegativeInteger . bacnet:PropertyIdentifier.zone-to a bacnet:PropertyIdentifierEnumerationValue ; bacnet:name "zone-to" ; bacnet:predicate bacnet:zone-to ; bacnet:value "321"^^xsd:nonNegativeInteger . bacnet:ProtocolLevel.bacnet-application a bacnet:ProtocolLevelEnumerationValue ; bacnet:name "bacnet-application" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:ProtocolLevel.non-bacnet-application a bacnet:ProtocolLevelEnumerationValue ; bacnet:name "non-bacnet-application" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:ProtocolLevel.physical a bacnet:ProtocolLevelEnumerationValue ; bacnet:name "physical" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:ProtocolLevel.protocol a bacnet:ProtocolLevelEnumerationValue ; bacnet:name "protocol" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:ReadAccessResult.ListOfResults a bacnet:SequenceOf ; bacnet:memberType bacnet:ReadAccessResult.ListOfResultsSequence . bacnet:RejectReason.buffer-overflow a bacnet:RejectReasonEnumerationValue ; bacnet:name "buffer-overflow" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:RejectReason.inconsistent-parameters a bacnet:RejectReasonEnumerationValue ; bacnet:name "inconsistent-parameters" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:RejectReason.invalid-parameter-data-type a bacnet:RejectReasonEnumerationValue ; bacnet:name "invalid-parameter-data-type" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:RejectReason.invalid-tag a bacnet:RejectReasonEnumerationValue ; bacnet:name "invalid-tag" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:RejectReason.missing-required-parameter a bacnet:RejectReasonEnumerationValue ; bacnet:name "missing-required-parameter" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:RejectReason.other a bacnet:RejectReasonEnumerationValue ; bacnet:name "other" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:RejectReason.parameter-out-of-range a bacnet:RejectReasonEnumerationValue ; bacnet:name "parameter-out-of-range" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:RejectReason.too-many-arguments a bacnet:RejectReasonEnumerationValue ; bacnet:name "too-many-arguments" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:RejectReason.undefined-enumeration a bacnet:RejectReasonEnumerationValue ; bacnet:name "undefined-enumeration" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:RejectReason.unrecognized-service a bacnet:RejectReasonEnumerationValue ; bacnet:name "unrecognized-service" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:Relationship.adjusted-by a bacnet:RelationshipEnumerationValue ; bacnet:name "adjusted-by" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:Relationship.adjusts a bacnet:RelationshipEnumerationValue ; bacnet:name "adjusts" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:Relationship.commanded-by a bacnet:RelationshipEnumerationValue ; bacnet:name "commanded-by" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:Relationship.commands a bacnet:RelationshipEnumerationValue ; bacnet:name "commands" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:Relationship.contained-by a bacnet:RelationshipEnumerationValue ; bacnet:name "contained-by" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:Relationship.contains a bacnet:RelationshipEnumerationValue ; bacnet:name "contains" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:Relationship.default a bacnet:RelationshipEnumerationValue ; bacnet:name "default" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:Relationship.egress a bacnet:RelationshipEnumerationValue ; bacnet:name "egress" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:Relationship.ingress a bacnet:RelationshipEnumerationValue ; bacnet:name "ingress" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:Relationship.receives-air a bacnet:RelationshipEnumerationValue ; bacnet:name "receives-air" ; bacnet:value "13"^^xsd:nonNegativeInteger . bacnet:Relationship.receives-cool-air a bacnet:RelationshipEnumerationValue ; bacnet:name "receives-cool-air" ; bacnet:value "17"^^xsd:nonNegativeInteger . bacnet:Relationship.receives-cool-water a bacnet:RelationshipEnumerationValue ; bacnet:name "receives-cool-water" ; bacnet:value "27"^^xsd:nonNegativeInteger . bacnet:Relationship.receives-gas a bacnet:RelationshipEnumerationValue ; bacnet:name "receives-gas" ; bacnet:value "21"^^xsd:nonNegativeInteger . bacnet:Relationship.receives-hot-air a bacnet:RelationshipEnumerationValue ; bacnet:name "receives-hot-air" ; bacnet:value "15"^^xsd:nonNegativeInteger . bacnet:Relationship.receives-hot-water a bacnet:RelationshipEnumerationValue ; bacnet:name "receives-hot-water" ; bacnet:value "25"^^xsd:nonNegativeInteger . bacnet:Relationship.receives-power a bacnet:RelationshipEnumerationValue ; bacnet:name "receives-power" ; bacnet:value "19"^^xsd:nonNegativeInteger . bacnet:Relationship.receives-steam a bacnet:RelationshipEnumerationValue ; bacnet:name "receives-steam" ; bacnet:value "29"^^xsd:nonNegativeInteger . bacnet:Relationship.receives-water a bacnet:RelationshipEnumerationValue ; bacnet:name "receives-water" ; bacnet:value "23"^^xsd:nonNegativeInteger . bacnet:Relationship.supplies-air a bacnet:RelationshipEnumerationValue ; bacnet:name "supplies-air" ; bacnet:value "12"^^xsd:nonNegativeInteger . bacnet:Relationship.supplies-cool-air a bacnet:RelationshipEnumerationValue ; bacnet:name "supplies-cool-air" ; bacnet:value "16"^^xsd:nonNegativeInteger . bacnet:Relationship.supplies-cool-water a bacnet:RelationshipEnumerationValue ; bacnet:name "supplies-cool-water" ; bacnet:value "26"^^xsd:nonNegativeInteger . bacnet:Relationship.supplies-gas a bacnet:RelationshipEnumerationValue ; bacnet:name "supplies-gas" ; bacnet:value "20"^^xsd:nonNegativeInteger . bacnet:Relationship.supplies-hot-air a bacnet:RelationshipEnumerationValue ; bacnet:name "supplies-hot-air" ; bacnet:value "14"^^xsd:nonNegativeInteger . bacnet:Relationship.supplies-hot-water a bacnet:RelationshipEnumerationValue ; bacnet:name "supplies-hot-water" ; bacnet:value "24"^^xsd:nonNegativeInteger . bacnet:Relationship.supplies-power a bacnet:RelationshipEnumerationValue ; bacnet:name "supplies-power" ; bacnet:value "18"^^xsd:nonNegativeInteger . bacnet:Relationship.supplies-steam a bacnet:RelationshipEnumerationValue ; bacnet:name "supplies-steam" ; bacnet:value "28"^^xsd:nonNegativeInteger . bacnet:Relationship.supplies-water a bacnet:RelationshipEnumerationValue ; bacnet:name "supplies-water" ; bacnet:value "22"^^xsd:nonNegativeInteger . bacnet:Relationship.unknown a bacnet:RelationshipEnumerationValue ; bacnet:name "unknown" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:Relationship.used-by a bacnet:RelationshipEnumerationValue ; bacnet:name "used-by" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:Relationship.uses a bacnet:RelationshipEnumerationValue ; bacnet:name "uses" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:Reliability.activation-failure a bacnet:ReliabilityEnumerationValue ; bacnet:name "activation-failure" ; bacnet:value "17"^^xsd:nonNegativeInteger . bacnet:Reliability.communication-failure a bacnet:ReliabilityEnumerationValue ; bacnet:name "communication-failure" ; bacnet:value "12"^^xsd:nonNegativeInteger . bacnet:Reliability.configuration-error a bacnet:ReliabilityEnumerationValue ; bacnet:name "configuration-error" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:Reliability.faults-listed a bacnet:ReliabilityEnumerationValue ; bacnet:name "faults-listed" ; bacnet:value "23"^^xsd:nonNegativeInteger . bacnet:Reliability.lamp-failure a bacnet:ReliabilityEnumerationValue ; bacnet:name "lamp-failure" ; bacnet:value "16"^^xsd:nonNegativeInteger . bacnet:Reliability.member-fault a bacnet:ReliabilityEnumerationValue ; bacnet:name "member-fault" ; bacnet:value "13"^^xsd:nonNegativeInteger . bacnet:Reliability.monitored-object-fault a bacnet:ReliabilityEnumerationValue ; bacnet:name "monitored-object-fault" ; bacnet:value "14"^^xsd:nonNegativeInteger . bacnet:Reliability.multi-state-fault a bacnet:ReliabilityEnumerationValue ; bacnet:name "multi-state-fault" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:Reliability.no-fault-detected a bacnet:ReliabilityEnumerationValue ; bacnet:name "no-fault-detected" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:Reliability.no-output a bacnet:ReliabilityEnumerationValue ; bacnet:name "no-output" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:Reliability.no-sensor a bacnet:ReliabilityEnumerationValue ; bacnet:name "no-sensor" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:Reliability.open-loop a bacnet:ReliabilityEnumerationValue ; bacnet:name "open-loop" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:Reliability.over-range a bacnet:ReliabilityEnumerationValue ; bacnet:name "over-range" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:Reliability.process-error a bacnet:ReliabilityEnumerationValue ; bacnet:name "process-error" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:Reliability.proprietary-command-failure a bacnet:ReliabilityEnumerationValue ; bacnet:name "proprietary-command-failure" ; bacnet:value "22"^^xsd:nonNegativeInteger . bacnet:Reliability.referenced-object-fault a bacnet:ReliabilityEnumerationValue ; bacnet:name "referenced-object-fault" ; bacnet:value "24"^^xsd:nonNegativeInteger . bacnet:Reliability.renew-dhcp-failure a bacnet:ReliabilityEnumerationValue ; bacnet:name "renew-dhcp-failure" ; bacnet:value "18"^^xsd:nonNegativeInteger . bacnet:Reliability.renew-fd-registration-failure a bacnet:ReliabilityEnumerationValue ; bacnet:name "renew-fd-registration-failure" ; bacnet:value "19"^^xsd:nonNegativeInteger . bacnet:Reliability.restart-auto-negotiation-failure a bacnet:ReliabilityEnumerationValue ; bacnet:name "restart-auto-negotiation-failure" ; bacnet:value "20"^^xsd:nonNegativeInteger . bacnet:Reliability.restart-failure a bacnet:ReliabilityEnumerationValue ; bacnet:name "restart-failure" ; bacnet:value "21"^^xsd:nonNegativeInteger . bacnet:Reliability.shorted-loop a bacnet:ReliabilityEnumerationValue ; bacnet:name "shorted-loop" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:Reliability.tripped a bacnet:ReliabilityEnumerationValue ; bacnet:name "tripped" ; bacnet:value "15"^^xsd:nonNegativeInteger . bacnet:Reliability.under-range a bacnet:ReliabilityEnumerationValue ; bacnet:name "under-range" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:Reliability.unreliable-other a bacnet:ReliabilityEnumerationValue ; bacnet:name "unreliable-other" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:RestartReason.activate-changes a bacnet:RestartReasonEnumerationValue ; bacnet:name "activate-changes" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:RestartReason.coldstart a bacnet:RestartReasonEnumerationValue ; bacnet:name "coldstart" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:RestartReason.detected-power-lost a bacnet:RestartReasonEnumerationValue ; bacnet:name "detected-power-lost" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:RestartReason.detected-powered-off a bacnet:RestartReasonEnumerationValue ; bacnet:name "detected-powered-off" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:RestartReason.hardware-watchdog a bacnet:RestartReasonEnumerationValue ; bacnet:name "hardware-watchdog" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:RestartReason.software-watchdog a bacnet:RestartReasonEnumerationValue ; bacnet:name "software-watchdog" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:RestartReason.suspended a bacnet:RestartReasonEnumerationValue ; bacnet:name "suspended" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:RestartReason.unknown a bacnet:RestartReasonEnumerationValue ; bacnet:name "unknown" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:RestartReason.warmstart a bacnet:RestartReasonEnumerationValue ; bacnet:name "warmstart" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:ResultFlags.first-item a bacnet:ResultFlagsNamedBits ; bacnet:bit "0"^^xsd:nonNegativeInteger ; bacnet:name "first-item" . bacnet:ResultFlags.last-item a bacnet:ResultFlagsNamedBits ; bacnet:bit "1"^^xsd:nonNegativeInteger ; bacnet:name "last-item" . bacnet:ResultFlags.more-items a bacnet:ResultFlagsNamedBits ; bacnet:bit "2"^^xsd:nonNegativeInteger ; bacnet:name "more-items" . bacnet:SecurityKeySet a sh:NodeShape ; rdfs:label "SecurityKeySet" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; bacnet:comment "UTC time, all wild if unknown"@en ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:expiration-time ], [ a sh:PropertyShape ; bacnet:comment "UTC time, all wild if unknown"@en ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:activation-time ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:key-ids ], [ a sh:PropertyShape ; bacnet:comment "0 if key set is not configured"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:key-revision ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:KeyIdentifier ; sh:path ( bacnet:key-ids [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:key-ids ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:key-ids ] ] ) . bacnet:SecurityLevel.encrypted a bacnet:SecurityLevelEnumerationValue ; bacnet:name "encrypted" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:SecurityLevel.encrypted-end-to-end a bacnet:SecurityLevelEnumerationValue ; bacnet:name "encrypted-end-to-end" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:SecurityLevel.incapable a bacnet:SecurityLevelEnumerationValue ; bacnet:name "incapable" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:SecurityLevel.plain a bacnet:SecurityLevelEnumerationValue ; bacnet:name "plain" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:SecurityLevel.signed a bacnet:SecurityLevelEnumerationValue ; bacnet:name "signed" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:SecurityLevel.signed-end-to-end a bacnet:SecurityLevelEnumerationValue ; bacnet:name "signed-end-to-end" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:SecurityPolicy.encrypted-trusted a bacnet:SecurityPolicyEnumerationValue ; bacnet:name "encrypted-trusted" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:SecurityPolicy.plain-non-trusted a bacnet:SecurityPolicyEnumerationValue ; bacnet:name "plain-non-trusted" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:SecurityPolicy.plain-trusted a bacnet:SecurityPolicyEnumerationValue ; bacnet:name "plain-trusted" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:SecurityPolicy.signed-trusted a bacnet:SecurityPolicyEnumerationValue ; bacnet:name "signed-trusted" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:Segmentation.no-segmentation a bacnet:SegmentationEnumerationValue ; bacnet:name "no-segmentation" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:Segmentation.segmented-both a bacnet:SegmentationEnumerationValue ; bacnet:name "segmented-both" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:Segmentation.segmented-receive a bacnet:SegmentationEnumerationValue ; bacnet:name "segmented-receive" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:Segmentation.segmented-transmit a bacnet:SegmentationEnumerationValue ; bacnet:name "segmented-transmit" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:ServicesSupported.acknowledge-alarm a bacnet:ServicesSupportedNamedBits ; bacnet:bit "0"^^xsd:nonNegativeInteger ; bacnet:name "acknowledge-alarm" . bacnet:ServicesSupported.add-list-element a bacnet:ServicesSupportedNamedBits ; bacnet:bit "8"^^xsd:nonNegativeInteger ; bacnet:name "add-list-element" . bacnet:ServicesSupported.atomic-read-file a bacnet:ServicesSupportedNamedBits ; bacnet:bit "6"^^xsd:nonNegativeInteger ; bacnet:name "atomic-read-file" . bacnet:ServicesSupported.atomic-write-file a bacnet:ServicesSupportedNamedBits ; bacnet:bit "7"^^xsd:nonNegativeInteger ; bacnet:name "atomic-write-file" . bacnet:ServicesSupported.confirmed-cov-notification a bacnet:ServicesSupportedNamedBits ; bacnet:bit "1"^^xsd:nonNegativeInteger ; bacnet:name "confirmed-cov-notification" . bacnet:ServicesSupported.confirmed-cov-notification-multiple a bacnet:ServicesSupportedNamedBits ; bacnet:bit "42"^^xsd:nonNegativeInteger ; bacnet:name "confirmed-cov-notification-multiple" . bacnet:ServicesSupported.confirmed-event-notification a bacnet:ServicesSupportedNamedBits ; bacnet:bit "2"^^xsd:nonNegativeInteger ; bacnet:name "confirmed-event-notification" . bacnet:ServicesSupported.confirmed-private-transfer a bacnet:ServicesSupportedNamedBits ; bacnet:bit "18"^^xsd:nonNegativeInteger ; bacnet:name "confirmed-private-transfer" . bacnet:ServicesSupported.confirmed-text-message a bacnet:ServicesSupportedNamedBits ; bacnet:bit "19"^^xsd:nonNegativeInteger ; bacnet:name "confirmed-text-message" . bacnet:ServicesSupported.create-object a bacnet:ServicesSupportedNamedBits ; bacnet:bit "10"^^xsd:nonNegativeInteger ; bacnet:name "create-object" . bacnet:ServicesSupported.delete-object a bacnet:ServicesSupportedNamedBits ; bacnet:bit "11"^^xsd:nonNegativeInteger ; bacnet:name "delete-object" . bacnet:ServicesSupported.device-communication-control a bacnet:ServicesSupportedNamedBits ; bacnet:bit "17"^^xsd:nonNegativeInteger ; bacnet:name "device-communication-control" . bacnet:ServicesSupported.get-alarm-summary a bacnet:ServicesSupportedNamedBits ; bacnet:bit "3"^^xsd:nonNegativeInteger ; bacnet:name "get-alarm-summary" . bacnet:ServicesSupported.get-enrollment-summary a bacnet:ServicesSupportedNamedBits ; bacnet:bit "4"^^xsd:nonNegativeInteger ; bacnet:name "get-enrollment-summary" . bacnet:ServicesSupported.get-event-information a bacnet:ServicesSupportedNamedBits ; bacnet:bit "39"^^xsd:nonNegativeInteger ; bacnet:name "get-event-information" . bacnet:ServicesSupported.i-am a bacnet:ServicesSupportedNamedBits ; bacnet:bit "26"^^xsd:nonNegativeInteger ; bacnet:name "i-am" . bacnet:ServicesSupported.i-have a bacnet:ServicesSupportedNamedBits ; bacnet:bit "27"^^xsd:nonNegativeInteger ; bacnet:name "i-have" . bacnet:ServicesSupported.life-safety-operation a bacnet:ServicesSupportedNamedBits ; bacnet:bit "37"^^xsd:nonNegativeInteger ; bacnet:name "life-safety-operation" . bacnet:ServicesSupported.read-property a bacnet:ServicesSupportedNamedBits ; bacnet:bit "12"^^xsd:nonNegativeInteger ; bacnet:name "read-property" . bacnet:ServicesSupported.read-property-multiple a bacnet:ServicesSupportedNamedBits ; bacnet:bit "14"^^xsd:nonNegativeInteger ; bacnet:name "read-property-multiple" . bacnet:ServicesSupported.read-range a bacnet:ServicesSupportedNamedBits ; bacnet:bit "35"^^xsd:nonNegativeInteger ; bacnet:name "read-range" . bacnet:ServicesSupported.reinitialize-device a bacnet:ServicesSupportedNamedBits ; bacnet:bit "20"^^xsd:nonNegativeInteger ; bacnet:name "reinitialize-device" . bacnet:ServicesSupported.remove-list-element a bacnet:ServicesSupportedNamedBits ; bacnet:bit "9"^^xsd:nonNegativeInteger ; bacnet:name "remove-list-element" . bacnet:ServicesSupported.subscribe-cov a bacnet:ServicesSupportedNamedBits ; bacnet:bit "5"^^xsd:nonNegativeInteger ; bacnet:name "subscribe-cov" . bacnet:ServicesSupported.subscribe-cov-property a bacnet:ServicesSupportedNamedBits ; bacnet:bit "38"^^xsd:nonNegativeInteger ; bacnet:name "subscribe-cov-property" . bacnet:ServicesSupported.subscribe-cov-property-multiple a bacnet:ServicesSupportedNamedBits ; bacnet:bit "41"^^xsd:nonNegativeInteger ; bacnet:name "subscribe-cov-property-multiple" . bacnet:ServicesSupported.time-synchronization a bacnet:ServicesSupportedNamedBits ; bacnet:bit "32"^^xsd:nonNegativeInteger ; bacnet:name "time-synchronization" . bacnet:ServicesSupported.unconfirmed-cov-notification a bacnet:ServicesSupportedNamedBits ; bacnet:bit "28"^^xsd:nonNegativeInteger ; bacnet:name "unconfirmed-cov-notification" . bacnet:ServicesSupported.unconfirmed-cov-notification-multiple a bacnet:ServicesSupportedNamedBits ; bacnet:bit "43"^^xsd:nonNegativeInteger ; bacnet:name "unconfirmed-cov-notification-multiple" . bacnet:ServicesSupported.unconfirmed-event-notification a bacnet:ServicesSupportedNamedBits ; bacnet:bit "29"^^xsd:nonNegativeInteger ; bacnet:name "unconfirmed-event-notification" . bacnet:ServicesSupported.unconfirmed-private-transfer a bacnet:ServicesSupportedNamedBits ; bacnet:bit "30"^^xsd:nonNegativeInteger ; bacnet:name "unconfirmed-private-transfer" . bacnet:ServicesSupported.unconfirmed-text-message a bacnet:ServicesSupportedNamedBits ; bacnet:bit "31"^^xsd:nonNegativeInteger ; bacnet:name "unconfirmed-text-message" . bacnet:ServicesSupported.utc-time-synchronization a bacnet:ServicesSupportedNamedBits ; bacnet:bit "36"^^xsd:nonNegativeInteger ; bacnet:name "utc-time-synchronization" . bacnet:ServicesSupported.vt-close a bacnet:ServicesSupportedNamedBits ; bacnet:bit "22"^^xsd:nonNegativeInteger ; bacnet:name "vt-close" . bacnet:ServicesSupported.vt-data a bacnet:ServicesSupportedNamedBits ; bacnet:bit "23"^^xsd:nonNegativeInteger ; bacnet:name "vt-data" . bacnet:ServicesSupported.vt-open a bacnet:ServicesSupportedNamedBits ; bacnet:bit "21"^^xsd:nonNegativeInteger ; bacnet:name "vt-open" . bacnet:ServicesSupported.who-has a bacnet:ServicesSupportedNamedBits ; bacnet:bit "33"^^xsd:nonNegativeInteger ; bacnet:name "who-has" . bacnet:ServicesSupported.who-is a bacnet:ServicesSupportedNamedBits ; bacnet:bit "34"^^xsd:nonNegativeInteger ; bacnet:name "who-is" . bacnet:ServicesSupported.write-group a bacnet:ServicesSupportedNamedBits ; bacnet:bit "40"^^xsd:nonNegativeInteger ; bacnet:name "write-group" . bacnet:ServicesSupported.write-property a bacnet:ServicesSupportedNamedBits ; bacnet:bit "15"^^xsd:nonNegativeInteger ; bacnet:name "write-property" . bacnet:ServicesSupported.write-property-multiple a bacnet:ServicesSupportedNamedBits ; bacnet:bit "16"^^xsd:nonNegativeInteger ; bacnet:name "write-property-multiple" . bacnet:ShedState.shed-compliant a bacnet:ShedStateEnumerationValue ; bacnet:name "shed-compliant" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:ShedState.shed-inactive a bacnet:ShedStateEnumerationValue ; bacnet:name "shed-inactive" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:ShedState.shed-non-compliant a bacnet:ShedStateEnumerationValue ; bacnet:name "shed-non-compliant" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:ShedState.shed-request-pending a bacnet:ShedStateEnumerationValue ; bacnet:name "shed-request-pending" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:SilencedState.all-silenced a bacnet:SilencedStateEnumerationValue ; bacnet:name "all-silenced" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:SilencedState.audible-silenced a bacnet:SilencedStateEnumerationValue ; bacnet:name "audible-silenced" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:SilencedState.unsilenced a bacnet:SilencedStateEnumerationValue ; bacnet:name "unsilenced" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:SilencedState.visible-silenced a bacnet:SilencedStateEnumerationValue ; bacnet:name "visible-silenced" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:StatusFlags.fault a bacnet:StatusFlagsNamedBits ; bacnet:bit "1"^^xsd:nonNegativeInteger ; bacnet:name "fault" . bacnet:StatusFlags.in-alarm a bacnet:StatusFlagsNamedBits ; bacnet:bit "0"^^xsd:nonNegativeInteger ; bacnet:name "in-alarm" . bacnet:StatusFlags.out-of-service a bacnet:StatusFlagsNamedBits ; bacnet:bit "3"^^xsd:nonNegativeInteger ; bacnet:name "out-of-service" . bacnet:StatusFlags.overridden a bacnet:StatusFlagsNamedBits ; bacnet:bit "2"^^xsd:nonNegativeInteger ; bacnet:name "overridden" . bacnet:SubscribeCOVPropertyMultipleRequest.ListOfCovSubscriptionSpecifications a bacnet:SequenceOf ; bacnet:memberType bacnet:SubscribeCOVPropertyMultipleRequest.ListOfCovSubscriptionSpecificationsSequence . bacnet:SubscribeCOVPropertyMultipleRequest.ListOfCovSubscriptionSpecificationsSequence.ListOfCovReferences a bacnet:SequenceOf ; bacnet:memberType bacnet:SubscribeCOVPropertyMultipleRequest.ListOfCovSubscriptionSpecificationsSequence.ListOfCovReferencesSequence . bacnet:TimerState.expired a bacnet:TimerStateEnumerationValue ; bacnet:name "expired" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:TimerState.idle a bacnet:TimerStateEnumerationValue ; bacnet:name "idle" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:TimerState.running a bacnet:TimerStateEnumerationValue ; bacnet:name "running" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:TimerTransition.expired-to-idle a bacnet:TimerTransitionEnumerationValue ; bacnet:name "expired-to-idle" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:TimerTransition.expired-to-running a bacnet:TimerTransitionEnumerationValue ; bacnet:name "expired-to-running" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:TimerTransition.forced-to-expired a bacnet:TimerTransitionEnumerationValue ; bacnet:name "forced-to-expired" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:TimerTransition.idle-to-running a bacnet:TimerTransitionEnumerationValue ; bacnet:name "idle-to-running" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:TimerTransition.none a bacnet:TimerTransitionEnumerationValue ; bacnet:name "none" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:TimerTransition.running-to-expired a bacnet:TimerTransitionEnumerationValue ; bacnet:name "running-to-expired" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:TimerTransition.running-to-idle a bacnet:TimerTransitionEnumerationValue ; bacnet:name "running-to-idle" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:TimerTransition.running-to-running a bacnet:TimerTransitionEnumerationValue ; bacnet:name "running-to-running" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:UnconfirmedCOVNotificationMultipleRequest a sh:NodeShape ; rdfs:label "UnconfirmedCOVNotificationMultipleRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:timestamp ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2})( ([0-9]))? ([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-cov-notifications ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:subscriber-process-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-remaining ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:initiating-device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:UnconfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence ; sh:path ( bacnet:list-of-cov-notifications [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-cov-notifications ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-cov-notifications ] ] ) . bacnet:UnconfirmedCOVNotificationMultipleRequest.ListOfCovNotifications a bacnet:SequenceOf ; bacnet:memberType bacnet:UnconfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence . bacnet:UnconfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence.ListOfValues a bacnet:SequenceOf ; bacnet:memberType bacnet:UnconfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence.ListOfValuesSequence . bacnet:UnconfirmedServiceChoice.i-am a bacnet:UnconfirmedServiceChoiceEnumerationValue ; bacnet:name "i-am" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:UnconfirmedServiceChoice.i-have a bacnet:UnconfirmedServiceChoiceEnumerationValue ; bacnet:name "i-have" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:UnconfirmedServiceChoice.time-synchronization a bacnet:UnconfirmedServiceChoiceEnumerationValue ; bacnet:name "time-synchronization" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:UnconfirmedServiceChoice.unconfirmed-cov-notification a bacnet:UnconfirmedServiceChoiceEnumerationValue ; bacnet:name "unconfirmed-cov-notification" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:UnconfirmedServiceChoice.unconfirmed-cov-notification-multiple a bacnet:UnconfirmedServiceChoiceEnumerationValue ; bacnet:name "unconfirmed-cov-notification-multiple" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:UnconfirmedServiceChoice.unconfirmed-event-notification a bacnet:UnconfirmedServiceChoiceEnumerationValue ; bacnet:name "unconfirmed-event-notification" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:UnconfirmedServiceChoice.unconfirmed-private-transfer a bacnet:UnconfirmedServiceChoiceEnumerationValue ; bacnet:name "unconfirmed-private-transfer" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:UnconfirmedServiceChoice.unconfirmed-text-message a bacnet:UnconfirmedServiceChoiceEnumerationValue ; bacnet:name "unconfirmed-text-message" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:UnconfirmedServiceChoice.utc-time-synchronization a bacnet:UnconfirmedServiceChoiceEnumerationValue ; bacnet:name "utc-time-synchronization" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:UnconfirmedServiceChoice.who-has a bacnet:UnconfirmedServiceChoiceEnumerationValue ; bacnet:name "who-has" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:UnconfirmedServiceChoice.who-is a bacnet:UnconfirmedServiceChoiceEnumerationValue ; bacnet:name "who-is" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:UnconfirmedServiceChoice.write-group a bacnet:UnconfirmedServiceChoiceEnumerationValue ; bacnet:name "write-group" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:VTClass.ansi-x3-64 a bacnet:VTClassEnumerationValue ; bacnet:name "ansi-x3-64" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:VTClass.dec-vt100 a bacnet:VTClassEnumerationValue ; bacnet:name "dec-vt100" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:VTClass.dec-vt220 a bacnet:VTClassEnumerationValue ; bacnet:name "dec-vt220" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:VTClass.dec-vt52 a bacnet:VTClassEnumerationValue ; bacnet:name "dec-vt52" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:VTClass.default-terminal a bacnet:VTClassEnumerationValue ; bacnet:name "default-terminal" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:VTClass.hp-700-94 a bacnet:VTClassEnumerationValue ; bacnet:name "hp-700-94" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:VTClass.ibm-3130 a bacnet:VTClassEnumerationValue ; bacnet:name "ibm-3130" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:WeekNDay a sh:NodeShape ; rdfs:label "WeekNDay" ; bacnet:comment "first octet: month (1..14), 1 =January, 13 = odd months, 14 = even months, X'FF' = any month; second octet: weekOfMonth where: 1 = days numbered 1-7, 2 = days numbered 8-14, 3 = days numbered 15-21, 4 = days numbered 22-28, 5 = days numbered 29-31, 6 = last 7 days of this month, X'FF' = any week of this month; third octet: dayOfWeek (1..7) where 1 = Monday... 7 = Sunday, X'FF' = any day of week"@en ; bacnet:maximumLength 3 ; bacnet:minimumLength 3 ; rdfs:subClassOf bacnet:OctetString . bacnet:WriteStatus.failed a bacnet:WriteStatusEnumerationValue ; bacnet:name "failed" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:WriteStatus.idle a bacnet:WriteStatusEnumerationValue ; bacnet:name "idle" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:WriteStatus.in-progress a bacnet:WriteStatusEnumerationValue ; bacnet:name "in-progress" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:WriteStatus.successful a bacnet:WriteStatusEnumerationValue ; bacnet:name "successful" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:AbortPDU a sh:NodeShape ; rdfs:label "AbortPDU" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:AbortReasonEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:abort-reason ], [ a sh:PropertyShape ; sh:hasValue "7"^^xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:pdu-type ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:server ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:original-invoke-id ] . bacnet:AccumulatorRecord a sh:NodeShape ; rdfs:label "AccumulatorRecord" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:accumulator-status ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:accumulated-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:timestamp ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2})( ([0-9]))? ([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] . bacnet:AcknowledgeAlarmRequest a sh:NodeShape ; rdfs:label "AcknowledgeAlarmRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-of-acknowledgment ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:acknowledgment-source ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state-acknowledged ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:timestamp ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:acknowledging-process-identifier ] . bacnet:ActionCommand a sh:NodeShape ; rdfs:label "ActionCommand" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; bacnet:comment "used only when property is commandable"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:post-delay ], [ a sh:PropertyShape ; bacnet:comment "used only with array datatype"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:quit-on-failure ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:write-successful ], [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ] . bacnet:ActionList a sh:NodeShape ; rdfs:label "ActionList" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:action ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ActionCommand ; sh:path ( bacnet:action [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:action ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:action ] ] ) . bacnet:AddListElementRequest a sh:NodeShape ; rdfs:label "AddListElementRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-elements ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ], [ a sh:PropertyShape ; bacnet:comment "used only with array datatype"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ] . bacnet:AssignedAccessRights a sh:NodeShape ; rdfs:label "AssignedAccessRights" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enable ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:assigned-access-rights ] . bacnet:AssignedLandingCalls a sh:NodeShape ; rdfs:label "AssignedLandingCalls" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:landing-calls ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:AssignedLandingCalls.LandingCallsSequence ; sh:path ( bacnet:landing-calls [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:landing-calls ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:landing-calls ] ] ) . bacnet:AtomicReadFileACK a sh:NodeShape ; rdfs:label "AtomicReadFileACK" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:AtomicReadFileACK.AccessMethod ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-method ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:end-of-file ] . bacnet:AtomicReadFileACK.AccessMethod a sh:NodeShape ; rdfs:label "AtomicReadFileACK.AccessMethod" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AtomicReadFileACK.AccessMethod.StreamAccess ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:stream-access ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AtomicReadFileACK.AccessMethod.RecordAccess ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:record-access ] ] ) . bacnet:AtomicReadFileACK.AccessMethod.RecordAccess a sh:NodeShape ; rdfs:label "AtomicReadFileACK.AccessMethod.RecordAccess" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-start-record ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:returned-record-count ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-record-data ] ; sh:xone ( [ sh:property [ sh:datatype xsd:hexBinary ; sh:minCount 1 ; sh:path ( bacnet:file-record-data [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:file-record-data ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:file-record-data ] ] ) . bacnet:AtomicReadFileACK.AccessMethod.StreamAccess a sh:NodeShape ; rdfs:label "AtomicReadFileACK.AccessMethod.StreamAccess" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-data ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-start-position ] . bacnet:AtomicReadFileRequest a sh:NodeShape ; rdfs:label "AtomicReadFileRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:AtomicReadFileRequest.AccessMethod ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-method ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] . bacnet:AtomicReadFileRequest.AccessMethod a sh:NodeShape ; rdfs:label "AtomicReadFileRequest.AccessMethod" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AtomicReadFileRequest.AccessMethod.StreamAccess ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:stream-access ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AtomicReadFileRequest.AccessMethod.RecordAccess ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:record-access ] ] ) . bacnet:AtomicReadFileRequest.AccessMethod.RecordAccess a sh:NodeShape ; rdfs:label "AtomicReadFileRequest.AccessMethod.RecordAccess" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-start-record ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:requested-record-count ] . bacnet:AtomicReadFileRequest.AccessMethod.StreamAccess a sh:NodeShape ; rdfs:label "AtomicReadFileRequest.AccessMethod.StreamAccess" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-start-position ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:requested-octet-count ] . bacnet:AtomicWriteFileACK a sh:NodeShape ; rdfs:label "AtomicWriteFileACK" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-start-position ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-start-record ] ] ) . bacnet:AtomicWriteFileRequest a sh:NodeShape ; rdfs:label "AtomicWriteFileRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:AtomicWriteFileRequest.AccessMethod ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-method ] . bacnet:AtomicWriteFileRequest.AccessMethod a sh:NodeShape ; rdfs:label "AtomicWriteFileRequest.AccessMethod" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AtomicWriteFileRequest.AccessMethod.StreamAccess ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:stream-access ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AtomicWriteFileRequest.AccessMethod.RecordAccess ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:record-access ] ] ) . bacnet:AtomicWriteFileRequest.AccessMethod.RecordAccess a sh:NodeShape ; rdfs:label "AtomicWriteFileRequest.AccessMethod.RecordAccess" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-start-record ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:record-count ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-record-data ] ; sh:xone ( [ sh:property [ sh:datatype xsd:hexBinary ; sh:minCount 1 ; sh:path ( bacnet:file-record-data [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:file-record-data ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:file-record-data ] ] ) . bacnet:AtomicWriteFileRequest.AccessMethod.StreamAccess a sh:NodeShape ; rdfs:label "AtomicWriteFileRequest.AccessMethod.StreamAccess" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-data ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-start-position ] . bacnet:AuditLogQueryParameters.BySource a sh:NodeShape ; rdfs:label "AuditLogQueryParameters.BySource" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:successful-actions-only ], [ a sh:PropertyShape ; sh:class bacnet:Address ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:source-device-address ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:operations ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:source-device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:source-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ; sh:xone ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:operations ] ] ) . bacnet:AuditLogQueryParameters.ByTarget a sh:NodeShape ; rdfs:label "AuditLogQueryParameters.ByTarget" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:successful-actions-only ], [ a sh:PropertyShape ; sh:class bacnet:Address ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:target-device-address ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:operations ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:target-device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:target-property-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:target-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:target-array-index ] ; sh:xone ( [ sh:property [ sh:class bacnet:AuditOperationFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:operations [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:operations ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:operations ] ] ) . bacnet:AuditLogRecord.LogDatum a sh:NodeShape ; rdfs:label "AuditLogRecord.LogDatum" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-status ] ; sh:xone ( [ sh:property [ sh:class bacnet:LogStatusNamedBits ; sh:minCount 1 ; sh:path ( bacnet:log-status [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:log-status ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:log-status ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AuditNotification ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:audit-notification ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-change ] ] ) . bacnet:AuditNotification a sh:NodeShape ; rdfs:label "AuditNotification" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:AuditOperationEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:operation ], [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:result ], [ a sh:PropertyShape ; sh:class bacnet:Recipient ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:source-device ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:source-user-id ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:target-comment ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:current-value ], [ a sh:PropertyShape ; sh:class bacnet:PropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:target-property ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:target-object ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:source-user-role ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:target-priority ], [ a sh:PropertyShape ; sh:class bacnet:Recipient ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:target-device ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:target-timestamp ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:source-comment ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:target-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:invoke-id ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:source-timestamp ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:source-object ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] . bacnet:AuthenticationFactorFormat a sh:NodeShape ; rdfs:label "AuthenticationFactorFormat" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:vendor-id ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:vendor-format ], [ a sh:PropertyShape ; sh:class bacnet:AuthenticationFactorTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:format-type ] . bacnet:AuthenticationPolicy a sh:NodeShape ; rdfs:label "AuthenticationPolicy" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:policy ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:order-enforced ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:timeout ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:AuthenticationPolicy.PolicySequence ; sh:path ( bacnet:policy [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:policy ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:policy ] ] ) . bacnet:BDTEntry a sh:NodeShape ; rdfs:label "BDTEntry" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:HostNPort ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:bbmd-address ], [ a sh:PropertyShape ; bacnet:comment "shall be present if Bacnet/IP, and absent for BACnet/IPv6"@en ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:broadcast-mask ] . bacnet:COVMultipleSubscription a sh:NodeShape ; rdfs:label "COVMultipleSubscription" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-cov-subscription-specifications ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:max-notification-delay ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:issue-confirmed-notifications ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-remaining ], [ a sh:PropertyShape ; sh:class bacnet:RecipientProcess ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:recipient ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:COVMultipleSubscription.ListOfCovSubscriptionSpecificationsSequence ; sh:path ( bacnet:list-of-cov-subscription-specifications [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-cov-subscription-specifications ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-cov-subscription-specifications ] ] ) . bacnet:COVSubscription a sh:NodeShape ; rdfs:label "COVSubscription" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; bacnet:comment "used only with monitored properties with a numeric datatype"@en ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-increment ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:issue-confirmed-notifications ], [ a sh:PropertyShape ; sh:class bacnet:RecipientProcess ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:recipient ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-remaining ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:monitored-property-reference ] . bacnet:ComplexACKPDU a sh:NodeShape ; rdfs:label "ComplexACKPDU" ; bacnet:comment ""@en ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:ConfirmedServiceACK ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:service-ack ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:more-follows ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:segmented-message ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:invoke-id ], [ a sh:PropertyShape ; sh:hasValue "3"^^xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:pdu-type ], [ a sh:PropertyShape ; bacnet:comment "only if segmented messages"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:sequence-number ], [ a sh:PropertyShape ; sh:class bacnet:ConfirmedServiceChoiceEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:service-ack-choice ], [ a sh:PropertyShape ; bacnet:comment "only if segmented messages"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:proposed-window-size ] . bacnet:ConfirmedCOVNotificationMultipleRequest a sh:NodeShape ; rdfs:label "ConfirmedCOVNotificationMultipleRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:subscriber-process-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-remaining ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:initiating-device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-cov-notifications ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:timestamp ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2})( ([0-9]))? ([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ConfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence ; sh:path ( bacnet:list-of-cov-notifications [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-cov-notifications ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-cov-notifications ] ] ) . bacnet:ConfirmedCOVNotificationRequest a sh:NodeShape ; rdfs:label "ConfirmedCOVNotificationRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-values ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:initiating-device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:monitored-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-remaining ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:subscriber-process-identifier ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PropertyValue ; sh:path ( bacnet:list-of-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-values ] ] ) . bacnet:ConfirmedPrivateTransferACK a sh:NodeShape ; rdfs:label "ConfirmedPrivateTransferACK" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:result-block ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:service-number ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:vendor-id ] . bacnet:ConfirmedPrivateTransferError a sh:NodeShape ; rdfs:label "ConfirmedPrivateTransferError" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:error-parameters ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:service-number ], [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:error-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:vendor-id ] . bacnet:ConfirmedPrivateTransferRequest a sh:NodeShape ; rdfs:label "ConfirmedPrivateTransferRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:service-parameters ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:service-number ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:vendor-id ] . bacnet:ConfirmedRequestPDU a sh:NodeShape ; rdfs:label "ConfirmedRequestPDU" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; bacnet:comment "only if segmented messages"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:proposed-window-size ], [ a sh:PropertyShape ; bacnet:comment "as per 20.1.2.5"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:max-apdu-length-accepted ], [ a sh:PropertyShape ; sh:class bacnet:ConfirmedServiceRequest ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:service-request ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:segmented-message ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:more-follows ], [ a sh:PropertyShape ; sh:hasValue "0"^^xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:pdu-type ], [ a sh:PropertyShape ; bacnet:comment "only if segmented messages"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:sequence-number ], [ a sh:PropertyShape ; bacnet:comment "as per 20.1.2.4"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:max-segments-accepted ], [ a sh:PropertyShape ; sh:class bacnet:ConfirmedServiceChoiceEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:service-choice ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:segmented-response-accepted ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:invoke-id ] . bacnet:ConfirmedServiceACK a sh:NodeShape ; rdfs:label "ConfirmedServiceACK" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:get-alarm-summary ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:GetAlarmSummaryACKSequence ; sh:path ( bacnet:get-alarm-summary [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:get-alarm-summary ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:get-alarm-summary ] ] ) ] [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:get-enrollment-summary ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:GetEnrollmentSummaryACKSequence ; sh:path ( bacnet:get-enrollment-summary [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:get-enrollment-summary ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:get-enrollment-summary ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:GetEventInformationACK ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:get-event-information ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AtomicReadFileACK ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:atomic-read-file ] ] [ sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:node bacnet:AtomicWriteFileACK ; sh:path bacnet:atomic-write-file ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:create-object ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ReadPropertyACK ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:read-property ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ReadPropertyMultipleACK ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:read-property-multiple ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ReadRangeACK ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:read-range ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ConfirmedPrivateTransferACK ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:confirmed-private-transfer ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:VTOpenACK ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:vt-open ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:VTDataACK ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:vt-data ] ] ) . bacnet:ConfirmedServiceRequest a sh:NodeShape ; rdfs:label "ConfirmedServiceRequest" ; bacnet:comment "Other services will be added as they are defined. All choice values in this production are reserved for prototype by ASHRAE. Proprietary extensions are made by using the ConfirmedPrivateTransfer service. See Clause 23."@en ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AcknowledgeAlarmRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:acknowledge-alarm ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ConfirmedCOVNotificationRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:confirmed-cov-notification ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ConfirmedCOVNotificationMultipleRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:confirmed-cov-notification-multiple ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ConfirmedEventNotificationRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:confirmed-event-notification ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:GetEnrollmentSummaryRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:get-enrollment-summary ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:GetEventInformationRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:get-event-information ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyOperationRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:life-safety-operation ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:SubscribeCOVRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:subscribe-cov ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:SubscribeCOVPropertyRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:subscribe-cov-property ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:SubscribeCOVPropertyMultipleRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:subscribe-cov-property-multiple ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AtomicReadFileRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:atomic-read-file ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AtomicWriteFileRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:atomic-write-file ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AddListElementRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:add-list-element ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:RemoveListElementRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:remove-list-element ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:CreateObjectRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:create-object ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DeleteObjectRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:delete-object ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ReadPropertyRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:read-property ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ReadPropertyMultipleRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:read-property-multiple ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ReadRangeRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:read-range ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:WritePropertyRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:write-property ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:WritePropertyMultipleRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:write-property-multiple ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DeviceCommunicationControlRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:device-communication-control ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ConfirmedPrivateTransferRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:confirmed-private-transfer ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ConfirmedTextMessageRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:confirmed-text-message ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ReinitializeDeviceRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reinitialize-device ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:VTOpenRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:vt-open ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:VTCloseRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:vt-close ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:VTDataRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:vt-data ] ] ) . bacnet:ConfirmedTextMessageRequest a sh:NodeShape ; rdfs:label "ConfirmedTextMessageRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:message-priority ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:text-message-parseSource-device ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:ConfirmedTextMessageRequest.MessageClass ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:message-class ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:message ] . bacnet:ConfirmedTextMessageRequest.MessageClass a sh:NodeShape ; rdfs:label "ConfirmedTextMessageRequest.MessageClass" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:numeric ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:character ] ] ) . bacnet:CreateObjectError a sh:NodeShape ; rdfs:label "CreateObjectError" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:error-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:first-failed-element-number ] . bacnet:CreateObjectRequest a sh:NodeShape ; rdfs:label "CreateObjectRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:list-of-initial-values ], [ a sh:PropertyShape ; sh:class bacnet:CreateObjectRequest.ObjectSpecifier ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-specifier ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PropertyValue ; sh:path ( bacnet:list-of-initial-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-initial-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-initial-values ] ] ) . bacnet:CreateObjectRequest.ObjectSpecifier a sh:NodeShape ; rdfs:label "CreateObjectRequest.ObjectSpecifier" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ObjectTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] ) . bacnet:CredentialAuthenticationFactor a sh:NodeShape ; rdfs:label "CredentialAuthenticationFactor" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:AuthenticationFactor ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:authentication-factor ], [ a sh:PropertyShape ; sh:class bacnet:AccessAuthenticationFactorDisableEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:disable ] . bacnet:DailySchedule a sh:NodeShape ; rdfs:label "DailySchedule" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:day-schedule ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeValue ; sh:path ( bacnet:day-schedule [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:day-schedule ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:day-schedule ] ] ) . bacnet:DeleteObjectRequest a sh:NodeShape ; rdfs:label "DeleteObjectRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] . bacnet:DeviceCommunicationControlRequest a sh:NodeShape ; rdfs:label "DeviceCommunicationControlRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enable-disable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:password ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:time-duration ] . bacnet:DeviceObjectPropertyValue a sh:NodeShape ; rdfs:label "DeviceObjectPropertyValue" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:array-index ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:value ] . bacnet:ErrorPDU a sh:NodeShape ; rdfs:label "ErrorPDU" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:ConfirmedServiceChoiceEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:error-choice ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:original-invoke-id ], [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:error ], [ a sh:PropertyShape ; sh:hasValue "5"^^xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:pdu-type ] . bacnet:EventLogRecord a sh:NodeShape ; rdfs:label "EventLogRecord" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:timestamp ], [ a sh:PropertyShape ; sh:class bacnet:EventLogRecord.LogDatum ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-datum ] . bacnet:EventLogRecord.LogDatum a sh:NodeShape ; rdfs:label "EventLogRecord.LogDatum" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-status ] ; sh:xone ( [ sh:property [ sh:class bacnet:LogStatusNamedBits ; sh:minCount 1 ; sh:path ( bacnet:log-status [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:log-status ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:log-status ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ConfirmedEventNotificationRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:notification ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-change ] ] ) . bacnet:EventNotificationSubscription a sh:NodeShape ; rdfs:label "EventNotificationSubscription" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:process-identifier ], [ a sh:PropertyShape ; sh:class bacnet:Recipient ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:recipient ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-remaining ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:issue-confirmed-notifications ] . bacnet:EventParameter a sh:NodeShape ; rdfs:label "EventParameter" ; bacnet:comment "CHOICE [6] has been intentionally omitted. It parallels the complex-event-type CHOICE [6] of the BACnetNotificationParameters production which was introduced to allow the addition of proprietary event algorithms whose event parameters are not necessarily network-visible. CHOICE [19] has been intentionally omitted. It parallels the change-of-reliability event type CHOICE[19] of the BACnetNotificationParameters production which was introduced for the notification of event state changes to FAULT and from FAULT, which does not have event parameters."@en ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.ChangeOfBitstring ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-bitstring ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.ChangeOfState ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-state ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.ChangeOfValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.CommandFailure ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:command-failure ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.FloatingLimit ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:floating-limit ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.OutOfRange ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-range ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.ChangeOfLifeSafety ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-life-safety ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.Extended ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:extended ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.BufferReady ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:buffer-ready ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.UnsignedRange ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned-range ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.AccessEvent ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-event ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.DoubleOutOfRange ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:double-out-of-range ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.SignedOutOfRange ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:signed-out-of-range ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.UnsignedOutOfRange ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned-out-of-range ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.ChangeOfCharacterstring ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-characterstring ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.ChangeOfStatusFlags ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-status-flags ] ] [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:none ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.ChangeOfDiscreteValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-discrete-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.ChangeOfTimer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-timer ] ] ) . bacnet:EventParameter.AccessEvent a sh:NodeShape ; rdfs:label "EventParameter.AccessEvent" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-event-time-reference ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-access-events ] ; sh:xone ( [ sh:property [ sh:class bacnet:AccessEventEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:list-of-access-events [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-access-events ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-access-events ] ] ) . bacnet:EventParameter.BufferReady a sh:NodeShape ; rdfs:label "EventParameter.BufferReady" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:previous-notification-count ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:notification-threshold ] . bacnet:EventParameter.ChangeOfBitstring a sh:NodeShape ; rdfs:label "EventParameter.ChangeOfBitstring" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-bitstring-values ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:bitmask ] ; sh:xone ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:list-of-bitstring-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-bitstring-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-bitstring-values ] ] ), ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:bitmask [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:bitmask ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:bitmask ] ] ) . bacnet:EventParameter.ChangeOfCharacterstring a sh:NodeShape ; rdfs:label "EventParameter.ChangeOfCharacterstring" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-alarm-values ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ] ; sh:xone ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:list-of-alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-alarm-values ] ] ) . bacnet:EventParameter.ChangeOfDiscreteValue a sh:NodeShape ; rdfs:label "EventParameter.ChangeOfDiscreteValue" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ] . bacnet:EventParameter.ChangeOfLifeSafety a sh:NodeShape ; rdfs:label "EventParameter.ChangeOfLifeSafety" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:mode-property-reference ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-alarm-values ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-life-safety-alarm-values ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ] ; sh:xone ( [ sh:property [ sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:list-of-life-safety-alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-life-safety-alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-life-safety-alarm-values ] ] ), ( [ sh:property [ sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:list-of-alarm-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-alarm-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-alarm-values ] ] ) . bacnet:EventParameter.ChangeOfState a sh:NodeShape ; rdfs:label "EventParameter.ChangeOfState" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-values ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PropertyStates ; sh:path ( bacnet:list-of-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-values ] ] ) . bacnet:EventParameter.ChangeOfStatusFlags a sh:NodeShape ; rdfs:label "EventParameter.ChangeOfStatusFlags" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:selected-flags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:selected-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:selected-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:selected-flags ] ] ) . bacnet:EventParameter.ChangeOfTimer a sh:NodeShape ; rdfs:label "EventParameter.ChangeOfTimer" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:update-time-reference ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:alarm-value ] ; sh:xone ( [ sh:property [ sh:class bacnet:TimerStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:alarm-value [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:alarm-value ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:alarm-value ] ] ) . bacnet:EventParameter.ChangeOfValue a sh:NodeShape ; rdfs:label "EventParameter.ChangeOfValue" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:EventParameter.ChangeOfValue.CovCriteria ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:cov-criteria ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ] . bacnet:EventParameter.ChangeOfValue.CovCriteria a sh:NodeShape ; rdfs:label "EventParameter.ChangeOfValue.CovCriteria" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:bitmask ] ; sh:xone ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:bitmask [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:bitmask ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:bitmask ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:referenced-property-increment ] ] ) . bacnet:EventParameter.CommandFailure a sh:NodeShape ; rdfs:label "EventParameter.CommandFailure" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:feedback-property-reference ] . bacnet:EventParameter.DoubleOutOfRange a sh:NodeShape ; rdfs:label "EventParameter.DoubleOutOfRange" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:low-limit ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:high-limit ] . bacnet:EventParameter.Extended a sh:NodeShape ; rdfs:label "EventParameter.Extended" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:parameters ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:vendor-id ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:extended-event-type ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:EventParameter.Extended.ParametersChoice ; sh:path ( bacnet:parameters [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:parameters ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:parameters ] ] ) . bacnet:EventParameter.FloatingLimit a sh:NodeShape ; rdfs:label "EventParameter.FloatingLimit" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:high-diff-limit ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:low-diff-limit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:setpoint-reference ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:deadband ] . bacnet:EventParameter.OutOfRange a sh:NodeShape ; rdfs:label "EventParameter.OutOfRange" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:high-limit ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:low-limit ] . bacnet:EventParameter.SignedOutOfRange a sh:NodeShape ; rdfs:label "EventParameter.SignedOutOfRange" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:high-limit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:low-limit ] . bacnet:EventParameter.UnsignedOutOfRange a sh:NodeShape ; rdfs:label "EventParameter.UnsignedOutOfRange" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:low-limit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:high-limit ] . bacnet:EventParameter.UnsignedRange a sh:NodeShape ; rdfs:label "EventParameter.UnsignedRange" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:high-limit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-delay ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:low-limit ] . bacnet:FDTEntry a sh:NodeShape ; rdfs:label "FDTEntry" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; bacnet:comment "time to live in seconds at time of registration"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:time-to-live ], [ a sh:PropertyShape ; bacnet:comment "the 6-octet B/IP or 18-octet B/IPv6 address of the registrant"@en ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:bacnetip-address ], [ a sh:PropertyShape ; bacnet:comment "remaining time to live in seconds, incl. grace period"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:remaining-time-to-live ] . bacnet:FaultParameter a sh:NodeShape ; rdfs:label "FaultParameter" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:none ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:FaultParameter.FaultCharacterstring ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:fault-characterstring ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:FaultParameter.FaultExtended ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:fault-extended ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:FaultParameter.FaultLifeSafety ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:fault-life-safety ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:FaultParameter.FaultState ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:fault-state ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:FaultParameter.FaultStatusFlags ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:fault-status-flags ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:FaultParameter.FaultOutOfRange ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:fault-out-of-range ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:FaultParameter.FaultListed ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:fault-listed ] ] ) . bacnet:FaultParameter.FaultCharacterstring a sh:NodeShape ; rdfs:label "FaultParameter.FaultCharacterstring" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-fault-values ] ; sh:xone ( [ sh:property [ sh:datatype xsd:string ; sh:minCount 1 ; sh:path ( bacnet:list-of-fault-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-fault-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-fault-values ] ] ) . bacnet:FaultParameter.FaultExtended a sh:NodeShape ; rdfs:label "FaultParameter.FaultExtended" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:parameters ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:extended-fault-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:vendor-id ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:FaultParameter.FaultExtended.ParametersChoice ; sh:path ( bacnet:parameters [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:parameters ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:parameters ] ] ) . bacnet:FaultParameter.FaultLifeSafety a sh:NodeShape ; rdfs:label "FaultParameter.FaultLifeSafety" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:mode-property-reference ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-fault-values ] ; sh:xone ( [ sh:property [ sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:minCount 1 ; sh:path ( bacnet:list-of-fault-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-fault-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-fault-values ] ] ) . bacnet:FaultParameter.FaultListed a sh:NodeShape ; rdfs:label "FaultParameter.FaultListed" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:fault-list-reference ] . bacnet:FaultParameter.FaultOutOfRange a sh:NodeShape ; rdfs:label "FaultParameter.FaultOutOfRange" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:FaultParameter.FaultOutOfRange.MaxNormalValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:max-normal-value ], [ a sh:PropertyShape ; sh:class bacnet:FaultParameter.FaultOutOfRange.MinNormalValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:min-normal-value ] . bacnet:FaultParameter.FaultOutOfRange.MaxNormalValue a sh:NodeShape ; rdfs:label "FaultParameter.FaultOutOfRange.MaxNormalValue" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:real ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:double ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:integer ] ] ) . bacnet:FaultParameter.FaultOutOfRange.MinNormalValue a sh:NodeShape ; rdfs:label "FaultParameter.FaultOutOfRange.MinNormalValue" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:real ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:double ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:integer ] ] ) . bacnet:FaultParameter.FaultState a sh:NodeShape ; rdfs:label "FaultParameter.FaultState" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-fault-values ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PropertyStates ; sh:path ( bacnet:list-of-fault-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-fault-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-fault-values ] ] ) . bacnet:FaultParameter.FaultStatusFlags a sh:NodeShape ; rdfs:label "FaultParameter.FaultStatusFlags" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags-reference ] . bacnet:GetEnrollmentSummaryRequest a sh:NodeShape ; rdfs:label "GetEnrollmentSummaryRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:RecipientProcess ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:enrollment-filter ], [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:acknowledgment-filter ], [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-state-filter ], [ a sh:PropertyShape ; sh:class bacnet:GetEnrollmentSummaryRequest.PriorityFilter ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority-filter ], [ a sh:PropertyShape ; sh:class bacnet:EventTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-type-filter ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class-filter ] . bacnet:GetEnrollmentSummaryRequest.PriorityFilter a sh:NodeShape ; rdfs:label "GetEnrollmentSummaryRequest.PriorityFilter" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:max-priority ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:min-priority ] . bacnet:GetEventInformationACK a sh:NodeShape ; rdfs:label "GetEventInformationACK" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:more-events ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-event-summaries ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:GetEventInformationACK.ListOfEventSummariesSequence ; sh:path ( bacnet:list-of-event-summaries [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-event-summaries ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-event-summaries ] ] ) . bacnet:GetEventInformationRequest a sh:NodeShape ; rdfs:label "GetEventInformationRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-received-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] . bacnet:GroupChannelValue a sh:NodeShape ; rdfs:label "GroupChannelValue" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:channel ], [ a sh:PropertyShape ; sh:class bacnet:ChannelValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:overriding-priority ] . bacnet:HostAddress a sh:NodeShape ; rdfs:label "HostAddress" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:none ] ] [ sh:property [ a sh:PropertyShape ; bacnet:comment "4 octets for B/IP, or 16 octets for B/IPv6"@en ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:ip-address ] ] [ sh:property [ a sh:PropertyShape ; bacnet:comment "Internet host name (see RFC 1123)"@en ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:name ] ] ) . bacnet:IAmRequest a sh:NodeShape ; rdfs:label "IAmRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:i-am-device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:SegmentationEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:segmentation-supported ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:vendor-id ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:max-apdu-length-accepted ] . bacnet:IHaveRequest a sh:NodeShape ; rdfs:label "IHaveRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] . bacnet:KeyIdentifier a sh:NodeShape ; rdfs:label "KeyIdentifier" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:key-id ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:algorithm ] . bacnet:LandingCallStatus.Command a sh:NodeShape ; rdfs:label "LandingCallStatus.Command" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LiftCarDirectionEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:direction ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:destination ] ] ) . bacnet:LandingDoorStatus a sh:NodeShape ; rdfs:label "LandingDoorStatus" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:landing-doors ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:LandingDoorStatus.LandingDoorsSequence ; sh:path ( bacnet:landing-doors [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:landing-doors ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:landing-doors ] ] ) . bacnet:LifeSafetyOperationRequest a sh:NodeShape ; rdfs:label "LifeSafetyOperationRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:requesting-source ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:requesting-process-identifier ], [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyOperationEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:request ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] . bacnet:LiftCarCallList a sh:NodeShape ; rdfs:label "LiftCarCallList" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:landing-doors ] . bacnet:LogData a sh:NodeShape ; rdfs:label "LogData" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-status ] ; sh:xone ( [ sh:property [ sh:class bacnet:LogStatusNamedBits ; sh:minCount 1 ; sh:path ( bacnet:log-status [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:log-status ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:log-status ] ] ) ] [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-data ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:LogData.LogDataChoice ; sh:path ( bacnet:log-data [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:log-data ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:log-data ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-change ] ] ) . bacnet:LogMultipleRecord a sh:NodeShape ; rdfs:label "LogMultipleRecord" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:LogData ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-data ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:timestamp ] . bacnet:LogRecord a sh:NodeShape ; rdfs:label "LogRecord" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:timestamp ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:LogRecord.LogDatum ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-datum ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:LogRecord.LogDatum a sh:NodeShape ; rdfs:label "LogRecord.LogDatum" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-status ] ; sh:xone ( [ sh:property [ sh:class bacnet:LogStatusNamedBits ; sh:minCount 1 ; sh:path ( bacnet:log-status [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:log-status ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:log-status ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:boolean-value ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:real-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enumerated-value ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned-value ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:integer-value ] ] [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:bitstring-value ] ; sh:xone ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:bitstring-value [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:bitstring-value ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:bitstring-value ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:null-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:failure ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-change ] ] [ sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:any-value ] ] ) . bacnet:NameValueCollection a sh:NodeShape ; rdfs:label "NameValueCollection" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:members ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NameValue ; sh:path ( bacnet:members [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:members ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:members ] ] ) . bacnet:NotificationParameters.AccessEvent a sh:NodeShape ; rdfs:label "NotificationParameters.AccessEvent" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-event-time ], [ a sh:PropertyShape ; sh:class bacnet:AuthenticationFactor ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:authentication-factor ], [ a sh:PropertyShape ; sh:class bacnet:AccessEventEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-event ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-credential ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-event-tag ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:NotificationParameters.BufferReady a sh:NodeShape ; rdfs:label "NotificationParameters.BufferReady" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:current-notification ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:previous-notification ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:buffer-property ] . bacnet:NotificationParameters.ChangeOfBitstring a sh:NodeShape ; rdfs:label "NotificationParameters.ChangeOfBitstring" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:referenced-bitstring ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:referenced-bitstring [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:referenced-bitstring ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:referenced-bitstring ] ] ) . bacnet:NotificationParameters.ChangeOfCharacterstring a sh:NodeShape ; rdfs:label "NotificationParameters.ChangeOfCharacterstring" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:changed-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:alarm-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:NotificationParameters.ChangeOfDiscreteValue a sh:NodeShape ; rdfs:label "NotificationParameters.ChangeOfDiscreteValue" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.ChangeOfDiscreteValue.NewValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:new-value ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:NotificationParameters.ChangeOfDiscreteValue.NewValue a sh:NodeShape ; rdfs:label "NotificationParameters.ChangeOfDiscreteValue.NewValue" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:boolean ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:integer ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enumerated ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:characterstring ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:octetstring ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:date ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:objectidentifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:datetime ] ] ) . bacnet:NotificationParameters.ChangeOfLifeSafety a sh:NodeShape ; rdfs:label "NotificationParameters.ChangeOfLifeSafety" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:new-state ], [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:new-mode ], [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyOperationEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:operation-expected ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:NotificationParameters.ChangeOfReliability a sh:NodeShape ; rdfs:label "NotificationParameters.ChangeOfReliability" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-values ], [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PropertyValue ; sh:path ( bacnet:property-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:property-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:property-values ] ] ) . bacnet:NotificationParameters.ChangeOfState a sh:NodeShape ; rdfs:label "NotificationParameters.ChangeOfState" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:PropertyStates ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:new-state ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:NotificationParameters.ChangeOfStatusFlags a sh:NodeShape ; rdfs:label "NotificationParameters.ChangeOfStatusFlags" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; bacnet:comment "depends on referenced property"@en ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:present-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:referenced-flags ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:referenced-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:referenced-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:referenced-flags ] ] ) . bacnet:NotificationParameters.ChangeOfTimer a sh:NodeShape ; rdfs:label "NotificationParameters.ChangeOfTimer" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:expiration-time ], [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:update-time ], [ a sh:PropertyShape ; sh:class bacnet:TimerTransitionEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:last-state-change ], [ a sh:PropertyShape ; sh:class bacnet:TimerStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-timer ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:initial-timeout ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:NotificationParameters.ChangeOfValue a sh:NodeShape ; rdfs:label "NotificationParameters.ChangeOfValue" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.ChangeOfValue.NewValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:new-value ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:NotificationParameters.ChangeOfValue.NewValue a sh:NodeShape ; rdfs:label "NotificationParameters.ChangeOfValue.NewValue" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:changed-bits ] ; sh:xone ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:changed-bits [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:changed-bits ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:changed-bits ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:changed-value ] ] ) . bacnet:NotificationParameters.CommandFailure a sh:NodeShape ; rdfs:label "NotificationParameters.CommandFailure" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; bacnet:comment "depends on ref property"@en ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:command-value ], [ a sh:PropertyShape ; bacnet:comment "depends on ref property"@en ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:feedback-value ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:NotificationParameters.DoubleOutOfRange a sh:NodeShape ; rdfs:label "NotificationParameters.DoubleOutOfRange" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:exceeding-value ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:exceeded-limit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:deadband ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:NotificationParameters.Extended a sh:NodeShape ; rdfs:label "NotificationParameters.Extended" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:vendor-id ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:parameters ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:extended-event-type ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:NotificationParameters.Extended.ParametersChoice ; sh:path ( bacnet:parameters [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:parameters ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:parameters ] ] ) . bacnet:NotificationParameters.FloatingLimit a sh:NodeShape ; rdfs:label "NotificationParameters.FloatingLimit" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reference-value ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:error-limit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:setpoint-value ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:NotificationParameters.OutOfRange a sh:NodeShape ; rdfs:label "NotificationParameters.OutOfRange" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:exceeded-limit ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:exceeding-value ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:NotificationParameters.SignedOutOfRange a sh:NodeShape ; rdfs:label "NotificationParameters.SignedOutOfRange" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:exceeding-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:exceeded-limit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:NotificationParameters.UnsignedOutOfRange a sh:NodeShape ; rdfs:label "NotificationParameters.UnsignedOutOfRange" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:exceeded-limit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:exceeding-value ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:NotificationParameters.UnsignedRange a sh:NodeShape ; rdfs:label "NotificationParameters.UnsignedRange" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:exceeding-value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:exceeded-limit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status-flags ] ; sh:xone ( [ sh:property [ sh:class bacnet:StatusFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:status-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:status-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:status-flags ] ] ) . bacnet:ObjectSelector a sh:NodeShape ; rdfs:label "ObjectSelector" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:none ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ObjectTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-type ] ] ) . bacnet:ObjectType.access-credential a bacnet:ObjectTypeEnumerationValue ; bacnet:name "access-credential" ; bacnet:value "32"^^xsd:nonNegativeInteger . bacnet:ObjectType.access-door a bacnet:ObjectTypeEnumerationValue ; bacnet:name "access-door" ; bacnet:value "30"^^xsd:nonNegativeInteger . bacnet:ObjectType.access-point a bacnet:ObjectTypeEnumerationValue ; bacnet:name "access-point" ; bacnet:value "33"^^xsd:nonNegativeInteger . bacnet:ObjectType.access-rights a bacnet:ObjectTypeEnumerationValue ; bacnet:name "access-rights" ; bacnet:value "34"^^xsd:nonNegativeInteger . bacnet:ObjectType.access-user a bacnet:ObjectTypeEnumerationValue ; bacnet:name "access-user" ; bacnet:value "35"^^xsd:nonNegativeInteger . bacnet:ObjectType.access-zone a bacnet:ObjectTypeEnumerationValue ; bacnet:name "access-zone" ; bacnet:value "36"^^xsd:nonNegativeInteger . bacnet:ObjectType.accumulator a bacnet:ObjectTypeEnumerationValue ; bacnet:name "accumulator" ; bacnet:value "23"^^xsd:nonNegativeInteger . bacnet:ObjectType.alert-enrollment a bacnet:ObjectTypeEnumerationValue ; bacnet:name "alert-enrollment" ; bacnet:value "52"^^xsd:nonNegativeInteger . bacnet:ObjectType.analog-input a bacnet:ObjectTypeEnumerationValue ; bacnet:name "analog-input" ; bacnet:value "0"^^xsd:nonNegativeInteger . bacnet:ObjectType.analog-output a bacnet:ObjectTypeEnumerationValue ; bacnet:name "analog-output" ; bacnet:value "1"^^xsd:nonNegativeInteger . bacnet:ObjectType.analog-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "analog-value" ; bacnet:value "2"^^xsd:nonNegativeInteger . bacnet:ObjectType.audit-log a bacnet:ObjectTypeEnumerationValue ; bacnet:name "audit-log" ; bacnet:value "61"^^xsd:nonNegativeInteger . bacnet:ObjectType.audit-reporter a bacnet:ObjectTypeEnumerationValue ; bacnet:name "audit-reporter" ; bacnet:value "62"^^xsd:nonNegativeInteger . bacnet:ObjectType.averaging a bacnet:ObjectTypeEnumerationValue ; bacnet:name "averaging" ; bacnet:value "18"^^xsd:nonNegativeInteger . bacnet:ObjectType.binary-input a bacnet:ObjectTypeEnumerationValue ; bacnet:name "binary-input" ; bacnet:value "3"^^xsd:nonNegativeInteger . bacnet:ObjectType.binary-lighting-output a bacnet:ObjectTypeEnumerationValue ; bacnet:name "binary-lighting-output" ; bacnet:value "55"^^xsd:nonNegativeInteger . bacnet:ObjectType.binary-output a bacnet:ObjectTypeEnumerationValue ; bacnet:name "binary-output" ; bacnet:value "4"^^xsd:nonNegativeInteger . bacnet:ObjectType.binary-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "binary-value" ; bacnet:value "5"^^xsd:nonNegativeInteger . bacnet:ObjectType.bitstring-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "bitstring-value" ; bacnet:value "39"^^xsd:nonNegativeInteger . bacnet:ObjectType.calendar a bacnet:ObjectTypeEnumerationValue ; bacnet:name "calendar" ; bacnet:value "6"^^xsd:nonNegativeInteger . bacnet:ObjectType.channel a bacnet:ObjectTypeEnumerationValue ; bacnet:name "channel" ; bacnet:value "53"^^xsd:nonNegativeInteger . bacnet:ObjectType.characterstring-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "characterstring-value" ; bacnet:value "40"^^xsd:nonNegativeInteger . bacnet:ObjectType.command a bacnet:ObjectTypeEnumerationValue ; bacnet:name "command" ; bacnet:value "7"^^xsd:nonNegativeInteger . bacnet:ObjectType.credential-data-input a bacnet:ObjectTypeEnumerationValue ; bacnet:name "credential-data-input" ; bacnet:value "37"^^xsd:nonNegativeInteger . bacnet:ObjectType.date-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "date-value" ; bacnet:value "42"^^xsd:nonNegativeInteger . bacnet:ObjectType.datepattern-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "datepattern-value" ; bacnet:value "41"^^xsd:nonNegativeInteger . bacnet:ObjectType.datetime-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "datetime-value" ; bacnet:value "44"^^xsd:nonNegativeInteger . bacnet:ObjectType.datetimepattern-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "datetimepattern-value" ; bacnet:value "43"^^xsd:nonNegativeInteger . bacnet:ObjectType.device a bacnet:ObjectTypeEnumerationValue ; bacnet:name "device" ; bacnet:value "8"^^xsd:nonNegativeInteger . bacnet:ObjectType.elevator-group a bacnet:ObjectTypeEnumerationValue ; bacnet:name "elevator-group" ; bacnet:value "57"^^xsd:nonNegativeInteger . bacnet:ObjectType.escalator a bacnet:ObjectTypeEnumerationValue ; bacnet:name "escalator" ; bacnet:value "58"^^xsd:nonNegativeInteger . bacnet:ObjectType.event-enrollment a bacnet:ObjectTypeEnumerationValue ; bacnet:name "event-enrollment" ; bacnet:value "9"^^xsd:nonNegativeInteger . bacnet:ObjectType.event-log a bacnet:ObjectTypeEnumerationValue ; bacnet:name "event-log" ; bacnet:value "25"^^xsd:nonNegativeInteger . bacnet:ObjectType.file a bacnet:ObjectTypeEnumerationValue ; bacnet:name "file" ; bacnet:value "10"^^xsd:nonNegativeInteger . bacnet:ObjectType.global-group a bacnet:ObjectTypeEnumerationValue ; bacnet:name "global-group" ; bacnet:value "26"^^xsd:nonNegativeInteger . bacnet:ObjectType.group a bacnet:ObjectTypeEnumerationValue ; bacnet:name "group" ; bacnet:value "11"^^xsd:nonNegativeInteger . bacnet:ObjectType.integer-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "integer-value" ; bacnet:value "45"^^xsd:nonNegativeInteger . bacnet:ObjectType.large-analog-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "large-analog-value" ; bacnet:value "46"^^xsd:nonNegativeInteger . bacnet:ObjectType.life-safety-point a bacnet:ObjectTypeEnumerationValue ; bacnet:name "life-safety-point" ; bacnet:value "21"^^xsd:nonNegativeInteger . bacnet:ObjectType.life-safety-zone a bacnet:ObjectTypeEnumerationValue ; bacnet:name "life-safety-zone" ; bacnet:value "22"^^xsd:nonNegativeInteger . bacnet:ObjectType.lift a bacnet:ObjectTypeEnumerationValue ; bacnet:name "lift" ; bacnet:value "59"^^xsd:nonNegativeInteger . bacnet:ObjectType.lighting-output a bacnet:ObjectTypeEnumerationValue ; bacnet:name "lighting-output" ; bacnet:value "54"^^xsd:nonNegativeInteger . bacnet:ObjectType.load-control a bacnet:ObjectTypeEnumerationValue ; bacnet:name "load-control" ; bacnet:value "28"^^xsd:nonNegativeInteger . bacnet:ObjectType.loop a bacnet:ObjectTypeEnumerationValue ; bacnet:name "loop" ; bacnet:value "12"^^xsd:nonNegativeInteger . bacnet:ObjectType.multi-state-input a bacnet:ObjectTypeEnumerationValue ; bacnet:name "multi-state-input" ; bacnet:value "13"^^xsd:nonNegativeInteger . bacnet:ObjectType.multi-state-output a bacnet:ObjectTypeEnumerationValue ; bacnet:name "multi-state-output" ; bacnet:value "14"^^xsd:nonNegativeInteger . bacnet:ObjectType.multi-state-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "multi-state-value" ; bacnet:value "19"^^xsd:nonNegativeInteger . bacnet:ObjectType.network-port a bacnet:ObjectTypeEnumerationValue ; bacnet:name "network-port" ; bacnet:value "56"^^xsd:nonNegativeInteger . bacnet:ObjectType.notification-class a bacnet:ObjectTypeEnumerationValue ; bacnet:name "notification-class" ; bacnet:value "15"^^xsd:nonNegativeInteger . bacnet:ObjectType.notification-forwarder a bacnet:ObjectTypeEnumerationValue ; bacnet:name "notification-forwarder" ; bacnet:value "51"^^xsd:nonNegativeInteger . bacnet:ObjectType.octetstring-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "octetstring-value" ; bacnet:value "47"^^xsd:nonNegativeInteger . bacnet:ObjectType.positive-integer-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "positive-integer-value" ; bacnet:value "48"^^xsd:nonNegativeInteger . bacnet:ObjectType.program a bacnet:ObjectTypeEnumerationValue ; bacnet:name "program" ; bacnet:value "16"^^xsd:nonNegativeInteger . bacnet:ObjectType.pulse-converter a bacnet:ObjectTypeEnumerationValue ; bacnet:name "pulse-converter" ; bacnet:value "24"^^xsd:nonNegativeInteger . bacnet:ObjectType.schedule a bacnet:ObjectTypeEnumerationValue ; bacnet:name "schedule" ; bacnet:value "17"^^xsd:nonNegativeInteger . bacnet:ObjectType.staging a bacnet:ObjectTypeEnumerationValue ; bacnet:name "staging" ; bacnet:value "60"^^xsd:nonNegativeInteger . bacnet:ObjectType.structured-view a bacnet:ObjectTypeEnumerationValue ; bacnet:name "structured-view" ; bacnet:value "29"^^xsd:nonNegativeInteger . bacnet:ObjectType.time-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "time-value" ; bacnet:value "50"^^xsd:nonNegativeInteger . bacnet:ObjectType.timepattern-value a bacnet:ObjectTypeEnumerationValue ; bacnet:name "timepattern-value" ; bacnet:value "49"^^xsd:nonNegativeInteger . bacnet:ObjectType.timer a bacnet:ObjectTypeEnumerationValue ; bacnet:name "timer" ; bacnet:value "31"^^xsd:nonNegativeInteger . bacnet:ObjectType.trend-log a bacnet:ObjectTypeEnumerationValue ; bacnet:name "trend-log" ; bacnet:value "20"^^xsd:nonNegativeInteger . bacnet:ObjectType.trend-log-multiple a bacnet:ObjectTypeEnumerationValue ; bacnet:name "trend-log-multiple" ; bacnet:value "27"^^xsd:nonNegativeInteger . bacnet:PortPermission a sh:NodeShape ; rdfs:label "PortPermission" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enabled ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:port-id ] . bacnet:Prescale a sh:NodeShape ; rdfs:label "Prescale" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:multiplier ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:modulo-divide ] . bacnet:ProcessIdSelection a sh:NodeShape ; rdfs:label "ProcessIdSelection" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:process-identifier ] ] [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:null-value ] ] ) . bacnet:PropertyAccessResult a sh:NodeShape ; rdfs:label "PropertyAccessResult" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:PropertyAccessResult.AccessResult ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-result ], [ a sh:PropertyShape ; bacnet:comment "used only with array datatype; if omitted with an array then the entire array is referenced"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ] . bacnet:PropertyAccessResult.AccessResult a sh:NodeShape ; rdfs:label "PropertyAccessResult.AccessResult" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-access-error ] ] ) . bacnet:ReadAccessResult.ListOfResultsSequence.ReadResult a sh:NodeShape ; rdfs:label "ReadAccessResult.ListOfResultsSequence.ReadResult" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-access-error ] ] ) . bacnet:ReadPropertyACK a sh:NodeShape ; rdfs:label "ReadPropertyACK" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ], [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-value ] . bacnet:ReadPropertyMultipleACK a sh:NodeShape ; rdfs:label "ReadPropertyMultipleACK" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-read-access-results ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ReadAccessResult ; sh:path ( bacnet:list-of-read-access-results [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-read-access-results ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-read-access-results ] ] ) . bacnet:ReadPropertyMultipleRequest a sh:NodeShape ; rdfs:label "ReadPropertyMultipleRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-read-access-specs ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ReadAccessSpecification ; sh:path ( bacnet:list-of-read-access-specs [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-read-access-specs ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-read-access-specs ] ] ) . bacnet:ReadPropertyRequest a sh:NodeShape ; rdfs:label "ReadPropertyRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; bacnet:comment "used only with array datatype; if omitted with an array the entire array is referenced"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ], [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ] . bacnet:ReadRangeACK a sh:NodeShape ; rdfs:label "ReadRangeACK" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:result-flags ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:item-data ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:item-count ], [ a sh:PropertyShape ; bacnet:comment "used only with array datatype"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ], [ a sh:PropertyShape ; bacnet:comment "used only if 'Item Count' > 0 and the request was either of type 'By Sequence Number' or 'By Time'"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:first-sequence-number ] ; sh:xone ( [ sh:property [ sh:class bacnet:ResultFlagsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:result-flags [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:result-flags ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:result-flags ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:path ( bacnet:item-data [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:item-data ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:item-data ] ] ) . bacnet:ReadRangeRequest a sh:NodeShape ; rdfs:label "ReadRangeRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:ReadRangeRequest.Range ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:range ], [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ], [ a sh:PropertyShape ; bacnet:comment "used only with array datatype"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] . bacnet:ReadRangeRequest.Range a sh:NodeShape ; rdfs:label "ReadRangeRequest.Range" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ReadRangeRequest.Range.ByPosition ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:by-position ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ReadRangeRequest.Range.BySequenceNumber ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:by-sequence-number ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ReadRangeRequest.Range.ByTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:by-time ] ] ) . bacnet:ReadRangeRequest.Range.ByPosition a sh:NodeShape ; rdfs:label "ReadRangeRequest.Range.ByPosition" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:maxInclusive 32767 ; sh:minCount 1 ; sh:minInclusive -32768 ; sh:path bacnet:count ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reference-index ] . bacnet:ReadRangeRequest.Range.BySequenceNumber a sh:NodeShape ; rdfs:label "ReadRangeRequest.Range.BySequenceNumber" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reference-sequence-number ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:maxInclusive 32767 ; sh:minCount 1 ; sh:minInclusive -32768 ; sh:path bacnet:count ] . bacnet:ReadRangeRequest.Range.ByTime a sh:NodeShape ; rdfs:label "ReadRangeRequest.Range.ByTime" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reference-time ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2})( ([0-9]))? ([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ], [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:maxInclusive 32767 ; sh:minCount 1 ; sh:minInclusive -32768 ; sh:path bacnet:count ] . bacnet:ReinitializeDeviceRequest a sh:NodeShape ; rdfs:label "ReinitializeDeviceRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:password ], [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reinitialized-state-of-device ] . bacnet:RejectPDU a sh:NodeShape ; rdfs:label "RejectPDU" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:original-invoke-id ], [ a sh:PropertyShape ; sh:class bacnet:RejectReasonEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reject-reason ], [ a sh:PropertyShape ; sh:hasValue "6"^^xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:pdu-type ] . bacnet:RemoveListElementRequest a sh:NodeShape ; rdfs:label "RemoveListElementRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-elements ], [ a sh:PropertyShape ; bacnet:comment "used only with array datatypes"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ] . bacnet:RouterEntry a sh:NodeShape ; rdfs:label "RouterEntry" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:network-number ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 0 ; sh:minInclusive 0 ; sh:path bacnet:performance-index ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:mac-address ], [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:status ] . bacnet:Scale a sh:NodeShape ; rdfs:label "Scale" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:float-scale ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:integer-scale ] ] ) . bacnet:SegmentACKPDU a sh:NodeShape ; rdfs:label "SegmentACKPDU" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:sequence-number ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:server ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:original-invoke-id ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:actual-window-size ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:negative-ack ], [ a sh:PropertyShape ; sh:hasValue "4"^^xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:pdu-type ] . bacnet:SetpointReference a sh:NodeShape ; rdfs:label "SetpointReference" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:setpoint-reference ] . bacnet:SimpleACKPDU a sh:NodeShape ; rdfs:label "SimpleACKPDU" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:invoke-id ], [ a sh:PropertyShape ; sh:hasValue "2"^^xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:pdu-type ], [ a sh:PropertyShape ; sh:class bacnet:ConfirmedServiceChoiceEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:service-ack-choice ] . bacnet:SpecialEvent a sh:NodeShape ; rdfs:label "SpecialEvent" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:SpecialEvent.Period ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:period ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-time-values ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-priority ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeValue ; sh:path ( bacnet:list-of-time-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-time-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-time-values ] ] ) . bacnet:SpecialEvent.Period a sh:NodeShape ; rdfs:label "SpecialEvent.Period" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:node bacnet:CalendarEntry ; sh:path bacnet:calendar-entry ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:calendar-reference ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] ) . bacnet:StageLimitValue a sh:NodeShape ; rdfs:label "StageLimitValue" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:deadband ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:limit ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:values ] ; sh:xone ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:values ] ] ) . bacnet:SubscribeCOVPropertyMultipleError a sh:NodeShape ; rdfs:label "SubscribeCOVPropertyMultipleError" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:error-type ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:SubscribeCOVPropertyMultipleError.FirstFailedSubscription ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:first-failed-subscription ] ] ) . bacnet:SubscribeCOVPropertyMultipleError.FirstFailedSubscription a sh:NodeShape ; rdfs:label "SubscribeCOVPropertyMultipleError.FirstFailedSubscription" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:monitored-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:error-type ], [ a sh:PropertyShape ; sh:class bacnet:PropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:monitored-property-reference ] . bacnet:SubscribeCOVPropertyMultipleRequest a sh:NodeShape ; rdfs:label "SubscribeCOVPropertyMultipleRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:lifetime ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:subscriber-process-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:max-notification-delay ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:issue-confirmed-notifications ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-cov-subscription-specifications ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:SubscribeCOVPropertyMultipleRequest.ListOfCovSubscriptionSpecificationsSequence ; sh:path ( bacnet:list-of-cov-subscription-specifications [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-cov-subscription-specifications ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-cov-subscription-specifications ] ] ) . bacnet:SubscribeCOVPropertyRequest a sh:NodeShape ; rdfs:label "SubscribeCOVPropertyRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:issue-confirmed-notifications ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:monitored-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:PropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:monitored-property-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:lifetime ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:subscriber-process-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-increment ] . bacnet:SubscribeCOVRequest a sh:NodeShape ; rdfs:label "SubscribeCOVRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:monitored-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:subscriber-process-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:issue-confirmed-notifications ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:lifetime ] . bacnet:TimeSynchronizationRequest a sh:NodeShape ; rdfs:label "TimeSynchronizationRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2})( ([0-9]))? ([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] . bacnet:TimerStateChangeValue a sh:NodeShape ; rdfs:label "TimerStateChangeValue" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:null ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:boolean ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:integer ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:real ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:double ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:octetstring ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:characterstring ] ] [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:bitstring ] ; sh:xone ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:bitstring [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:bitstring ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:bitstring ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enumerated ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:date ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:objectidentifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:no-value ] ] [ sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:constructed-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:datetime ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LightingCommand ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:lighting-command ] ] ) . bacnet:UTCTimeSynchronizationRequest a sh:NodeShape ; rdfs:label "UTCTimeSynchronizationRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2})( ([0-9]))? ([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] . bacnet:UnconfirmedCOVNotificationRequest a sh:NodeShape ; rdfs:label "UnconfirmedCOVNotificationRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:subscriber-process-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:initiating-device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-remaining ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:monitored-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-values ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PropertyValue ; sh:path ( bacnet:list-of-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-values ] ] ) . bacnet:UnconfirmedEventNotificationRequest a sh:NodeShape ; rdfs:label "UnconfirmedEventNotificationRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:priority ], [ a sh:PropertyShape ; sh:class bacnet:EventTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:initiating-device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:process-identifier ], [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-values ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:message-text ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:timestamp ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ack-required ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:from-state ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:to-state ] . bacnet:UnconfirmedPrivateTransferRequest a sh:NodeShape ; rdfs:label "UnconfirmedPrivateTransferRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:service-parameters ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:service-number ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:vendor-id ] . bacnet:UnconfirmedRequestPDU a sh:NodeShape ; rdfs:label "UnconfirmedRequestPDU" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:UnconfirmedServiceRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:service-request ], [ a sh:PropertyShape ; sh:hasValue "1"^^xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:pdu-type ], [ a sh:PropertyShape ; sh:class bacnet:UnconfirmedServiceChoiceEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:service-choice ] . bacnet:UnconfirmedServiceRequest a sh:NodeShape ; rdfs:label "UnconfirmedServiceRequest" ; bacnet:comment "Other services to be added as they are defined. All choice values in this production are reserved for prototype by ASHRAE. Proprietary extensions are made by using the UnconfirmedPrivateTransfer service. See Clause 23."@en ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:class bacnet:IAmRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:i-am ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:IHaveRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:i-have ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:UnconfirmedCOVNotificationRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unconfirmed-cov-notification ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:UnconfirmedEventNotificationRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unconfirmed-event-notification ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:UnconfirmedPrivateTransferRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unconfirmed-private-transfer ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:UnconfirmedTextMessageRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unconfirmed-text-message ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:TimeSynchronizationRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-synchronization ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:WhoHasRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:who-has ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:WhoIsRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:who-is ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:UTCTimeSynchronizationRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:utc-time-synchronization ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:WriteGroupRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:write-group ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:WriteGroupRequest ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unconfirmed-cov-notification-multiple ] ] ) . bacnet:UnconfirmedTextMessageRequest a sh:NodeShape ; rdfs:label "UnconfirmedTextMessageRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:message ], [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:message-priority ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:text-message-parseSource-device ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:UnconfirmedTextMessageRequest.MessageClass ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:message-class ] . bacnet:UnconfirmedTextMessageRequest.MessageClass a sh:NodeShape ; rdfs:label "UnconfirmedTextMessageRequest.MessageClass" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:numeric ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:character ] ] ) . bacnet:VMACEntry a sh:NodeShape ; rdfs:label "VMACEntry" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:virtual-mac-address ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:native-mac-address ] . bacnet:VTCloseError a sh:NodeShape ; rdfs:label "VTCloseError" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:list-of-vt-session-identifiers ], [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:error-type ] ; sh:xone ( [ sh:property [ sh:datatype xsd:nonNegativeInteger ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path ( bacnet:list-of-vt-session-identifiers [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-vt-session-identifiers ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-vt-session-identifiers ] ] ) . bacnet:VTCloseRequest a sh:NodeShape ; rdfs:label "VTCloseRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-remote-vt-session-identifiers ] ; sh:xone ( [ sh:property [ sh:datatype xsd:nonNegativeInteger ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path ( bacnet:list-of-remote-vt-session-identifiers [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-remote-vt-session-identifiers ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-remote-vt-session-identifiers ] ] ) . bacnet:VTDataACK a sh:NodeShape ; rdfs:label "VTDataACK" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:all-new-data-accepted ], [ a sh:PropertyShape ; bacnet:comment "present only if all-new-data-accepted = false"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:accepted-octet-count ] . bacnet:VTDataRequest a sh:NodeShape ; rdfs:label "VTDataRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:vt-data-flag ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:vt-session-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:vt-new-data ] . bacnet:VTOpenACK a sh:NodeShape ; rdfs:label "VTOpenACK" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:remote-vt-session-identifier ] . bacnet:VTOpenRequest a sh:NodeShape ; rdfs:label "VTOpenRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:VTClassEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:vt-class ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:local-vt-session-identifier ] . bacnet:VTSession a sh:NodeShape ; rdfs:label "VTSession" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:remote-vt-session-id ], [ a sh:PropertyShape ; sh:class bacnet:Address ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:remote-vt-address ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:local-vt-session-id ] . bacnet:WhoHasRequest a sh:NodeShape ; rdfs:label "WhoHasRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:WhoHasRequest.Limits ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:limits ], [ a sh:PropertyShape ; sh:class bacnet:WhoHasRequest.Object ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object ] . bacnet:WhoHasRequest.Limits a sh:NodeShape ; rdfs:label "WhoHasRequest.Limits" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:device-instance-range-high-limit ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:device-instance-range-low-limit ] . bacnet:WhoHasRequest.Object a sh:NodeShape ; rdfs:label "WhoHasRequest.Object" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-name ] ] ) . bacnet:WhoIsRequest a sh:NodeShape ; rdfs:label "WhoIsRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; bacnet:comment "must be used as a pair, see 16.10"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-instance-range-low-limit ], [ a sh:PropertyShape ; bacnet:comment "must be used as a pair, see 16.10"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-instance-range-high-limit ] . bacnet:WriteAccessSpecification a sh:NodeShape ; rdfs:label "WriteAccessSpecification" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-properties ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PropertyValue ; sh:path ( bacnet:list-of-properties [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-properties ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-properties ] ] ) . bacnet:WritePropertyMultipleError a sh:NodeShape ; rdfs:label "WritePropertyMultipleError" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:error-type ], [ a sh:PropertyShape ; sh:class bacnet:ObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:first-failed-write-attempt ] . bacnet:WritePropertyMultipleRequest a sh:NodeShape ; rdfs:label "WritePropertyMultipleRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-write-access-specifications ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:WriteAccessSpecification ; sh:path ( bacnet:list-of-write-access-specifications [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-write-access-specifications ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-write-access-specifications ] ] ) . bacnet:WritePropertyRequest a sh:NodeShape ; rdfs:label "WritePropertyRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ], [ a sh:PropertyShape ; bacnet:comment "used only when property is commandable"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-value ], [ a sh:PropertyShape ; bacnet:comment "used only with array datatype; if omitted with an array the entire array is referenced"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ] . bacnet:AccessRule a sh:NodeShape ; rdfs:label "AccessRule" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time-range-specifier ], [ a sh:PropertyShape ; bacnet:comment "to be present if locationSpecifier has the value 'specified'"@en ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:location ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enable ], [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:location-specifier ], [ a sh:PropertyShape ; bacnet:comment "to be present if timeRangeSpecifier has the value 'specified'"@en ; sh:class bacnet:DeviceObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-range ] . bacnet:AssignedLandingCalls.LandingCallsSequence a sh:NodeShape ; rdfs:label "AssignedLandingCalls.LandingCallsSequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:floor-number ], [ a sh:PropertyShape ; sh:class bacnet:LiftCarDirectionEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:direction ] . bacnet:AuditLogRecord a sh:NodeShape ; rdfs:label "AuditLogRecord" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:AuditLogRecord.LogDatum ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:log-datum ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:assigned-access-rights ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2})( ([0-9]))? ([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] . bacnet:AuthenticationPolicy.PolicySequence a sh:NodeShape ; rdfs:label "AuthenticationPolicy.PolicySequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:index ], [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:credential-data-input ] . bacnet:COVMultipleSubscription.ListOfCovSubscriptionSpecificationsSequence a sh:NodeShape ; rdfs:label "COVMultipleSubscription.ListOfCovSubscriptionSpecificationsSequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-cov-references ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:monitored-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:COVMultipleSubscription.ListOfCovSubscriptionSpecificationsSequence.ListOfCovReferencesSequence ; sh:path ( bacnet:list-of-cov-references [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-cov-references ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-cov-references ] ] ) . bacnet:COVMultipleSubscription.ListOfCovSubscriptionSpecificationsSequence.ListOfCovReferencesSequence a sh:NodeShape ; rdfs:label "COVMultipleSubscription.ListOfCovSubscriptionSpecificationsSequence.ListOfCovReferencesSequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-increment ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:timestamped ], [ a sh:PropertyShape ; sh:class bacnet:PropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:monitored-property ] . bacnet:CalendarEntry a sh:NodeShape ; rdfs:label "CalendarEntry" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:date ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DateRange ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:date-range ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:weekNDay ; sh:pattern "^([1-9][0-9]*|[*]),([1-9][0-9]*|[*]),([1-9][0-9]*|[*])$" ] ] ) . bacnet:ChangeListError a sh:NodeShape ; rdfs:label "ChangeListError" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:error-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:first-failed-element-number ] . bacnet:ChannelValue a sh:NodeShape ; rdfs:label "ChannelValue" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:null ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:real ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enumerated ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:boolean ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:integer ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:double ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:characterstring ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:octetstring ] ] [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:bitstring ] ; sh:xone ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:bitstring [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:bitstring ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:bitstring ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:date ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:objectidentifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LightingCommand ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:lighting-command ] ] ) . bacnet:ClientCOV a sh:NodeShape ; rdfs:label "ClientCOV" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:real-increment ] ] [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:default-increment ] ] ) . bacnet:ConfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence a sh:NodeShape ; rdfs:label "ConfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-values ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:monitored-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ConfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence.ListOfValuesSequence ; sh:path ( bacnet:list-of-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-values ] ] ) . bacnet:ConfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence.ListOfValuesSequence a sh:NodeShape ; rdfs:label "ConfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence.ListOfValuesSequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-of-change ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ] . bacnet:ConfirmedEventNotificationRequest a sh:NodeShape ; rdfs:label "ConfirmedEventNotificationRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:process-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:message-text ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:initiating-device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:TimeStamp ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:timestamp ], [ a sh:PropertyShape ; sh:class bacnet:EventTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-type ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ack-required ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:to-state ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:priority ], [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:event-values ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:from-state ] . bacnet:DateRange a sh:NodeShape ; rdfs:label "DateRange" ; bacnet:comment "see Clause 20.2.12 for restrictions"@en ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:start-date ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:end-date ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ] . bacnet:Destination a sh:NodeShape ; rdfs:label "Destination" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:process-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:issue-confirmed-notifications ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:from-time ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:transitions ], [ a sh:PropertyShape ; sh:class bacnet:Recipient ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:recipient ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:to-time ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:valid-days ] ; sh:xone ( [ sh:property [ sh:class bacnet:DaysOfWeekNamedBits ; sh:minCount 1 ; sh:path ( bacnet:valid-days [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:valid-days ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:valid-days ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:transitions ] ] ) . bacnet:EventParameter.Extended.ParametersChoice a sh:NodeShape ; rdfs:label "EventParameter.Extended.ParametersChoice" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:null ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:real ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:boolean ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:integer ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:double ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:octetstring ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:characterstring ] ] [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:bitstring ] ; sh:xone ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:bitstring [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:bitstring ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:bitstring ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enumerated ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:date ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:objectidentifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reference ] ] ) . bacnet:FaultParameter.FaultExtended.ParametersChoice a sh:NodeShape ; rdfs:label "FaultParameter.FaultExtended.ParametersChoice" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:null ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:real ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:boolean ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:integer ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:double ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:octetstring ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:characterstring ] ] [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:bitstring ] ; sh:xone ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:bitstring [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:bitstring ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:bitstring ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enumerated ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:date ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:objectidentifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectPropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reference ] ] ) . bacnet:GetAlarmSummaryACKSequence a sh:NodeShape ; rdfs:label "GetAlarmSummaryACKSequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:acknowledged-transitions ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:alarm-state ] ; sh:xone ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acknowledged-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acknowledged-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acknowledged-transitions ] ] ) . bacnet:GetEnrollmentSummaryACKSequence a sh:NodeShape ; rdfs:label "GetEnrollmentSummaryACKSequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:EventTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-type ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:notification-class ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:priority ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] . bacnet:GetEventInformationACK.ListOfEventSummariesSequence a sh:NodeShape ; rdfs:label "GetEventInformationACK.ListOfEventSummariesSequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:acknowledged-transitions ], [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:notify-type ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-timestamps ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-enable ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-priorities ], [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-state ] ; sh:xone ( [ sh:property [ sh:datatype xsd:nonNegativeInteger ; sh:minCount 1 ; sh:path ( bacnet:event-priorities [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-priorities ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-priorities ] ] ), ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:TimeStamp ; sh:path ( bacnet:event-timestamps [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-timestamps ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-timestamps ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:acknowledged-transitions [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:acknowledged-transitions ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:acknowledged-transitions ] ] ), ( [ sh:property [ sh:class bacnet:EventTransitionBitsNamedBits ; sh:minCount 1 ; sh:path ( bacnet:event-enable [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:event-enable ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:event-enable ] ] ) . bacnet:LandingCallStatus a sh:NodeShape ; rdfs:label "LandingCallStatus" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:floor-text ], [ a sh:PropertyShape ; sh:class bacnet:LandingCallStatus.Command ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:command ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:floor-number ] . bacnet:LandingDoorStatus.LandingDoorsSequence a sh:NodeShape ; rdfs:label "LandingDoorStatus.LandingDoorsSequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:DoorStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:door-status ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 255 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:floor-number ] . bacnet:LogData.LogDataChoice a sh:NodeShape ; rdfs:label "LogData.LogDataChoice" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:boolean-value ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:real-value ] ] [ sh:property [ a sh:PropertyShape ; bacnet:comment "Optionally limited to 32 bits"@en ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enumerated-value ] ] [ sh:property [ a sh:PropertyShape ; bacnet:comment "Optionally limited to 32 bits"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned-value ] ] [ sh:property [ a sh:PropertyShape ; bacnet:comment "Optionally limited to 32 bits"@en ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:integer-value ] ] [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; bacnet:comment "Optionally limited to 32 bits"@en ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:bitstring-value ] ; sh:xone ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:bitstring-value [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:bitstring-value ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:bitstring-value ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:null-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:failure ] ] [ sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:any-value ] ] ) . bacnet:NotificationParameters a sh:NodeShape ; rdfs:label "NotificationParameters" ; bacnet:comment "CHOICE [20] has been intentionally omitted. It parallels the 'none' event type CHOICE[20] of the BACnetEventParameter production which was introduced for the case an object does not apply an event algorithm"@en ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.ChangeOfBitstring ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-bitstring ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.ChangeOfState ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-state ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.ChangeOfValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.CommandFailure ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:command-failure ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.FloatingLimit ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:floating-limit ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.OutOfRange ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:out-of-range ] ] [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:complex-event-type ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PropertyValue ; sh:path ( bacnet:complex-event-type [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:complex-event-type ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:complex-event-type ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.ChangeOfLifeSafety ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-life-safety ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.Extended ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:extended ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.BufferReady ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:buffer-ready ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.UnsignedRange ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned-range ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.AccessEvent ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-event ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.DoubleOutOfRange ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:double-out-of-range ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.SignedOutOfRange ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:signed-out-of-range ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.UnsignedOutOfRange ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned-out-of-range ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.ChangeOfCharacterstring ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-characterstring ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.ChangeOfStatusFlags ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-status-flags ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.ChangeOfReliability ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-reliability ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.ChangeOfDiscreteValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-discrete-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotificationParameters.ChangeOfTimer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-of-timer ] ] ) . bacnet:NotificationParameters.Extended.ParametersChoice a sh:NodeShape ; rdfs:label "NotificationParameters.Extended.ParametersChoice" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:null ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:real ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:boolean ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:integer ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:double ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:octetstring ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:characterstring ] ] [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:bitstring ] ; sh:xone ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:bitstring [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:bitstring ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:bitstring ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enumerated ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:date ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:objectidentifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectPropertyValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-value ] ] ) . bacnet:OptionalBinaryPV a sh:NodeShape ; rdfs:label "OptionalBinaryPV" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:null ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:BinaryPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:binary-pv ] ] ) . bacnet:OptionalCharacterString a sh:NodeShape ; rdfs:label "OptionalCharacterString" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:null ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:characterstring ] ] ) . bacnet:ReadAccessResult a sh:NodeShape ; rdfs:label "ReadAccessResult" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:list-of-results ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:ReadAccessResult.ListOfResultsSequence ; sh:path ( bacnet:list-of-results [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-results ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-results ] ] ) . bacnet:ReadAccessResult.ListOfResultsSequence a sh:NodeShape ; rdfs:label "ReadAccessResult.ListOfResultsSequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; bacnet:comment "used only with array datatype; if omitted with an array the entire array is referenced"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ], [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ], [ a sh:PropertyShape ; sh:class bacnet:ReadAccessResult.ListOfResultsSequence.ReadResult ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:read-result ] . bacnet:ReadAccessSpecification a sh:NodeShape ; rdfs:label "ReadAccessSpecification" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-property-references ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:PropertyReference ; sh:path ( bacnet:list-of-property-references [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-property-references ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-property-references ] ] ) . bacnet:SubscribeCOVPropertyMultipleRequest.ListOfCovSubscriptionSpecificationsSequence a sh:NodeShape ; rdfs:label "SubscribeCOVPropertyMultipleRequest.ListOfCovSubscriptionSpecificationsSequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-cov-references ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:monitored-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:SubscribeCOVPropertyMultipleRequest.ListOfCovSubscriptionSpecificationsSequence.ListOfCovReferencesSequence ; sh:path ( bacnet:list-of-cov-references [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-cov-references ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-cov-references ] ] ) . bacnet:SubscribeCOVPropertyMultipleRequest.ListOfCovSubscriptionSpecificationsSequence.ListOfCovReferencesSequence a sh:NodeShape ; rdfs:label "SubscribeCOVPropertyMultipleRequest.ListOfCovSubscriptionSpecificationsSequence.ListOfCovReferencesSequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:timestamped ], [ a sh:PropertyShape ; sh:class bacnet:PropertyReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:monitored-property ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:cov-increment ] . bacnet:TimeValue a sh:NodeShape ; rdfs:label "TimeValue" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; bacnet:comment "any primitive datatype; complex types cannot be decoded"@en ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:value ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] . bacnet:UnconfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence a sh:NodeShape ; rdfs:label "UnconfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:monitored-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:list-of-values ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:UnconfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence.ListOfValuesSequence ; sh:path ( bacnet:list-of-values [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:list-of-values ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:list-of-values ] ] ) . bacnet:UnconfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence.ListOfValuesSequence a sh:NodeShape ; rdfs:label "UnconfirmedCOVNotificationMultipleRequest.ListOfCovNotificationsSequence.ListOfValuesSequence" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:time-of-change ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ], [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:value ] . bacnet:WriteGroupRequest a sh:NodeShape ; rdfs:label "WriteGroupRequest" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:group-number ], [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:change-list ], [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:inhibit-delay ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:write-priority ] ; sh:xone ( [ sh:property [ sh:minCount 1 ; sh:node bacnet:GroupChannelValue ; sh:path ( bacnet:change-list [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:change-list ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:change-list ] ] ) . bacnet:AddressBinding a sh:NodeShape ; rdfs:label "AddressBinding" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:device-object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:Address ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:device-address ] . bacnet:HostNPort a sh:NodeShape ; rdfs:label "HostNPort" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:HostAddress ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:host ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:port ] . bacnet:LightingCommand a sh:NodeShape ; rdfs:label "LightingCommand" ; bacnet:comment "Note that the combination of level, ramp-rate, step-increment, and fade-time fields is dependent on the specific lighting operation. See Table 12-67"@en ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:step-increment ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:target-level ], [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:ramp-rate ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:fade-time ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority ], [ a sh:PropertyShape ; sh:class bacnet:LightingOperationEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:operation ] . bacnet:OptionalREAL a sh:NodeShape ; rdfs:label "OptionalREAL" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:null ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:real ] ] ) . bacnet:PropertyStates a sh:NodeShape ; rdfs:label "PropertyStates" ; bacnet:comment "This production represents the possible datatypes for properties that have discrete or enumerated values. The choice must be consistent with the datatype of the property referenced in the Event Enrollment Object. Tag values 0-63 are reserved for prototype by ASHRAE. Tag values of 64-254 may be used by others to accommodate vendor specific properties that have discrete or enumerated values, subject to the constraints described in Clause 23."@en ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:boolean-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:BinaryPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:binary-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:event-type ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:PolarityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:polarity ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ProgramRequestEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:program-change ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ProgramStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:program-state ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ProgramErrorEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reason-for-halt ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ReliabilityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reliability ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EventStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:state ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DeviceStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:system-status ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EngineeringUnitsEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:units ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:life-safety-mode ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:life-safety-state ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:RestartReasonEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:restart-reason ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DoorAlarmStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:door-alarm-state ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ActionEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:action ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DoorSecuredStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:door-secured-status ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DoorStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:door-status ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DoorValueEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:door-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:FileAccessMethodEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:file-access-method ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LockStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:lock-status ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LifeSafetyOperationEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:life-safety-operation ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:MaintenanceEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:maintenance ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NodeTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:node-type ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NotifyTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:notify-type ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:SecurityLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:security-level ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ShedStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:shed-state ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:SilencedStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:silenced-state ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AccessEventEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-event ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AccessZoneOccupancyStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:zone-occupancy-state ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AccessCredentialDisableReasonEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-credential-disable-reason ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AccessCredentialDisableEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:access-credential-disable ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:AuthenticationStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:authentication-status ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:BackupStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:backup-state ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:WriteStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:write-status ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LightingInProgressEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:lighting-in-progress ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LightingOperationEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:lighting-operation ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LightingTransitionEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:lighting-transition ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:integer-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:BinaryLightingPVEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:binary-lighting-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:TimerStateEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:timer-state ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:TimerTransitionEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:timer-transition ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:IPModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:bacnet-ip-mode ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NetworkPortCommandEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:network-port-command ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NetworkTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:network-type ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:NetworkNumberQualityEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:network-number-quality ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EscalatorOperationDirectionEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:escalator-operation-direction ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EscalatorFaultEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:escalator-fault ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EscalatorModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:escalator-mode ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LiftCarDirectionEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:lift-car-direction ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LiftCarDoorCommandEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:lift-car-door-command ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LiftCarDriveStatusEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:lift-car-drive-status ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LiftCarModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:lift-car-mode ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LiftGroupModeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:lift-group-mode ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:LiftFaultEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:lift-fault ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ProtocolLevelEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:protocol-level ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:extended-value ] ] ) . bacnet:RecipientProcess a sh:NodeShape ; rdfs:label "RecipientProcess" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:Recipient ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:recipient ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 4294967295 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:process-identifier ] . bacnet:ShedLevel a sh:NodeShape ; rdfs:label "ShedLevel" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:percent ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:level ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:amount ] ] ) . bacnet:AuthenticationFactor a sh:NodeShape ; rdfs:label "AuthenticationFactor" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; bacnet:comment "for encoding of values into this octet string see ANNEX P"@en ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:value ], [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:format-class ], [ a sh:PropertyShape ; sh:class bacnet:AuthenticationFactorTypeEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:format-type ] . bacnet:Address a sh:NodeShape ; rdfs:label "Address" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; bacnet:comment "A value of 0 indicates the local network"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:maxInclusive 65535 ; sh:minCount 1 ; sh:minInclusive 0 ; sh:path bacnet:network-number ], [ a sh:PropertyShape ; bacnet:comment "A string of length 0 indicates a broadcast"@en ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:mac-address ] . bacnet:PropertyReference a sh:NodeShape ; rdfs:label "PropertyReference" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ], [ a sh:PropertyShape ; bacnet:comment "used only with array datatype; if omitted with an array the entire array is referenced"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ] . bacnet:PropertyValue a sh:NodeShape ; rdfs:label "PropertyValue" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; bacnet:comment "any datatype appropriate for the specified property"@en ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-value ], [ a sh:PropertyShape ; bacnet:comment "used only with array datatypes; if omitted with an array the entire array is referenced"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ], [ a sh:PropertyShape ; bacnet:comment "used only when property is commandable"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:priority ], [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ] . bacnet:Recipient a sh:NodeShape ; rdfs:label "Recipient" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:device ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Address ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:address ] ] ) . bacnet:DeviceObjectPropertyReference a sh:NodeShape ; rdfs:label "DeviceObjectPropertyReference" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; bacnet:comment "used only with array datatype if omitted with an array then the entire array is referenced"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ] . bacnet:OptionalPriorityFilter a sh:NodeShape ; rdfs:label "OptionalPriorityFilter" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:null ] ] [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:filter ] ; sh:xone ( [ sh:property [ sh:class bacnet:PriorityFilterNamedBits ; sh:minCount 1 ; sh:path ( bacnet:filter [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:filter ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:filter ] ] ) ] ) . bacnet:PriorityValue a sh:NodeShape ; rdfs:label "PriorityValue" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:null ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:float ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:real ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:enumerated ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:boolean ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:integer ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:integer ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:double ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:double ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:characterstring ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:hexBinary ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:octetstring ] ] [ a sh:NodeShape ; sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:bitstring ] ; sh:xone ( [ sh:property [ sh:class bacnet:NamedBits ; sh:minCount 1 ; sh:path ( bacnet:bitstring [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ] ] [ sh:property [ sh:hasValue () ; sh:minCount 1 ; sh:path bacnet:bitstring ] ] [ sh:property [ sh:maxCount 0 ; sh:path bacnet:bitstring ] ] ) ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:date ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:objectidentifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] ] [ sh:property [ a sh:PropertyShape ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:constructed-value ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:datetime ] ] ) . bacnet:OptionalUnsigned a sh:NodeShape ; rdfs:label "OptionalUnsigned" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:null ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:unsigned ] ] ) . bacnet:DeviceObjectReference a sh:NodeShape ; rdfs:label "DeviceObjectReference" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:device-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ] . bacnet:Error a sh:NodeShape ; rdfs:label "Error" ; bacnet:comment "NOTE: The valid combinations of error-class and error-code are defined in Clause 18."@en, "Other services to be added as they are defined. All choice values in this production are reserved for prototype by ASHRAE. See Clause 23."@en ; rdfs:subClassOf bacnet:Choice, bacnet:Sequence ; sh:property [ a sh:PropertyShape ; bacnet:comment "Enumerated values 0-255 are reserved for prototype by ASHRAE. Enumerated values 256-65535 may be used by others subject to the procedures and constraints described in Clause 23."@en ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:error-code ], [ a sh:PropertyShape ; bacnet:comment "%Enumerated values 0-63 are reserved for prototype by ASHRAE. Enumerated values 64-65535 may be used by others subject to the procedures and constraints described in Clause 23"@en ; sh:class bacnet:EnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:error-class ] ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:other ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:acknowledge-alarm ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:confirmed-cov-notification ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:confirmed-cov-notification-multiple ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:confirmed-event-notification ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:get-alarm-summary ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:get-enrollment-summary ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:get-event-information ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:life-safety-operation ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:subscribe-cov ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:subscribe-cov-property ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:SubscribeCOVPropertyMultipleError ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:subscribe-cov-property-multiple ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:confirmed-cov-notification-multiple ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:atomic-read-file ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:atomic-write-file ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ChangeListError ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:add-list-element ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ChangeListError ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:remove-list-element ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:CreateObjectError ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:create-object ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:delete-object ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:read-property ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:read-property-multiple ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:read-range ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:write-property ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:WritePropertyMultipleError ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:write-property-multiple ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:device-communication-control ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:ConfirmedPrivateTransferError ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:confirmed-private-transfer ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:confirmed-text-message ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:reinitialize-device ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:vt-open ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:VTCloseError ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:vt-close ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Error ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:vt-data ] ] ) . bacnet:ObjectPropertyReference a sh:NodeShape ; rdfs:label "ObjectPropertyReference" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; bacnet:comment "used only with array datatype if omitted with an array the entire array is referenced"@en ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:property-array-index ], [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object-identifier ; sh:pattern "^[A-Za-z0-9-]+,[1-9][0-9]*$" ], [ a sh:PropertyShape ; sh:class bacnet:PropertyIdentifierEnumerationValue ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:property-identifier ] . bacnet:DateTime a sh:NodeShape ; rdfs:label "DateTime" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; bacnet:comment "see Clause 20.2.12 for restrictions"@en ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:date ; sh:pattern "^([0-9]{4})-([0-9]{2})-([0-9]{2}|[*])( ([0-9]|[*]))?$" ], [ a sh:PropertyShape ; bacnet:comment "see Clause 20.2.12 for restrictions"@en ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] . bacnet:ValueSource a sh:NodeShape ; rdfs:label "ValueSource" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:hasValue bacnet:Null ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:none ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DeviceObjectReference ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:object ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:Address ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:address ] ] ) . bacnet:NameValue a sh:NodeShape ; rdfs:label "NameValue" ; rdfs:subClassOf bacnet:Sequence ; sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:name ], [ a sh:PropertyShape ; bacnet:comment "value is limited to primitve datatypes and BACnetDateTime"@en ; sh:maxCount 1 ; sh:minCount 0 ; sh:path bacnet:value ] . bacnet:TimeStamp a sh:NodeShape ; rdfs:label "TimeStamp" ; rdfs:subClassOf bacnet:Choice ; sh:xone ( [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:string ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:time ; sh:pattern "^([0-9]{2}):([0-9]{2}):([0-9]{2})[.]([0-9]{2})$" ] ] [ sh:property [ a sh:PropertyShape ; sh:datatype xsd:nonNegativeInteger ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:sequence-number ] ] [ sh:property [ a sh:PropertyShape ; sh:class bacnet:DateTime ; sh:maxCount 1 ; sh:minCount 1 ; sh:path bacnet:datetime ] ] ) .