| @@ 295-312 (lines=18) @@ | ||
| 292 | /** |
|
| 293 | * @return ElementRef |
|
| 294 | */ |
|
| 295 | private function loadElementRef(ElementDef $referenced, DOMElement $node) |
|
| 296 | { |
|
| 297 | $ref = new ElementRef($referenced); |
|
| 298 | $this->setDoc($ref, $node); |
|
| 299 | ||
| 300 | static::maybeSetMax($ref, $node); |
|
| 301 | if ($node->hasAttribute("minOccurs")) { |
|
| 302 | $ref->setMin((int)$node->getAttribute("minOccurs")); |
|
| 303 | } |
|
| 304 | if ($node->hasAttribute("nillable")) { |
|
| 305 | $ref->setNil($node->getAttribute("nillable") == "true"); |
|
| 306 | } |
|
| 307 | if ($node->hasAttribute("form")) { |
|
| 308 | $ref->setQualified($node->getAttribute("form") == "qualified"); |
|
| 309 | } |
|
| 310 | ||
| 311 | return $ref; |
|
| 312 | } |
|
| 313 | ||
| 314 | private function setDoc(Item $ref, DOMElement $node) |
|
| 315 | { |
|
| @@ 331-346 (lines=16) @@ | ||
| 328 | /** |
|
| 329 | * @return AttributeRef |
|
| 330 | */ |
|
| 331 | private function loadAttributeRef(AttributeDef $referencedAttribiute, DOMElement $node) |
|
| 332 | { |
|
| 333 | $attribute = new AttributeRef($referencedAttribiute); |
|
| 334 | $this->setDoc($attribute, $node); |
|
| 335 | ||
| 336 | if ($node->hasAttribute("nillable")) { |
|
| 337 | $attribute->setNil($node->getAttribute("nillable") == "true"); |
|
| 338 | } |
|
| 339 | if ($node->hasAttribute("form")) { |
|
| 340 | $attribute->setQualified($node->getAttribute("form") == "qualified"); |
|
| 341 | } |
|
| 342 | if ($node->hasAttribute("use")) { |
|
| 343 | $attribute->setUse($node->getAttribute("use")); |
|
| 344 | } |
|
| 345 | return $attribute; |
|
| 346 | } |
|
| 347 | ||
| 348 | /** |
|
| 349 | * @param int|null $max |
|