phpcr/src/PHPCR/NodeType/NodeTypeDefinitionInterface.php
Copyright 2008-2011 Karsten Dambekalns karsten@typo3.org
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
\PHPCR\NodeType\NodeTypeDefinitionInterface
The information methods may be used both before and after the node type is registered. Its subclass NodeType adds methods that are relevant only when the node type is "live"; that is, after it has been registered. Note that the separate NodeDefinition interface only plays a significant role in implementations that support node type registration.
In those cases it serves as the superclass of both NodeType and NodeTypeTemplate. In implementations that do not support node type registration, only objects implementing the subinterface NodeType will be encountered.
Methods
getDeclaredChildNodeDefinitions() : array
Returns an array containing the child node definitions actually declared in this node type.
In implementations that support node type registration, if this NodeTypeDefinition object is actually a newly-created empty NodeTypeTemplate, then this method will return null.
Type | Description |
---|---|
array | An array of NodeDefinitions. |
- Api
getDeclaredPropertyDefinitions() : array
Returns an array containing the property definitions actually declared in this node type.
In implementations that support node type registration, if this NodeTypeDefinition object is actually a newly-created empty NodeTypeTemplate, then this method will return null.
Type | Description |
---|---|
array | An array of PropertyDefinitions. |
- Api
getDeclaredSupertypeNames() : array
Returns the names of the supertypes actually declared in this node type.
In implementations that support node type registration, if this NodeTypeDefinition object is actually a newly-created empty NodeTypeTemplate, then this method will return an array containing a single string indicating the node type nt:base.
Type | Description |
---|---|
array | List of names of declared supertypes. |
- Api
getName() : string
Returns the name of the node type.
In implementations that support node type registration, if this NodeTypeDefinition object is actually a newly-created empty NodeTypeTemplate, then this method will return null.
Type | Description |
---|---|
string | The name of the node type. |
- Api
getPrimaryItemName() : string
Returns the name of the primary item (one of the child items of the nodes of this node type).
If this node has no primary item, then this method returns null. This indicator is used by the method NodeInterface::getPrimaryItem().
In implementations that support node type registration, if this NodeTypeDefinitionInterface object is actually a newly-created empty NodeTypeTemplateInterface, then this method will return null.
Type | Description |
---|---|
string | The name of the primary item. |
- Api
hasOrderableChildNodes() : boolean
Determines if nodes of this type must support orderable child nodes.
Returns true if nodes of this type must support orderable child nodes; returns false otherwise. If a node type returns true on a call to this method, then all nodes of that node type must support the method NodeInterface::orderBefore(). If a node type returns false on a call to this method, then nodes of that node type may support NodeInterface::orderBefore(). Only the primary node type of a node controls that node's status in this regard. This setting on a mixin node type will not have any effect on the node.
In implementations that support node type registration, if this NodeTypeDefinitionInterface object is actually a newly-created empty NodeTypeTemplateInterface, then this method will return false.
Type | Description |
---|---|
boolean | True, if nodes of this type must support orderable child nodes, else false. |
- Api
isAbstract() : boolean
Reports if this is an abstract node type.
Returns true if this is an abstract node type; returns false otherwise. An abstract node type is one that cannot be assigned as the primary or mixin type of a node but can be used in the definitions of other node types as a superclass.
In implementations that support node type registration, if this NodeTypeDefinition object is actually a newly-created empty NodeTypeTemplate, then this method will return false.
Type | Description |
---|---|
boolean | True, if the current type is abstract, else false. |
- Api
isMixin() : boolean
Reports if this is a mixin node type.
Returns true if this is a mixin type; returns false if it is primary. In implementations that support node type registration, if this NodeTypeDefinition object is actually a newly-created empty NodeTypeTemplate, then this method will return false.
Type | Description |
---|---|
boolean | True if this is a mixin type, else false; |
- Api
isQueryable() : boolean
Determins if the node type is queryable.
Returns true if the node type is queryable, meaning that the available-query-operators, full-text-searchable and query-orderable attributes of its property definitions take effect.
If a node type is declared non-queryable then these attributes of its property definitions have no effect.
Type | Description |
---|---|
boolean | True, if the node type is queryable, else false. |
- Api
- See
- \PHPCR\NodeType\PropertyDefinition::getAvailableQueryOperators()
- See
- \PHPCR\NodeType\PropertyDefinition::isFullTextSearchable()
- See
- \PHPCR\NodeType\PropertyDefinition::isQueryOrderable()